【轉】解決未能加載文件或程序集'WebGrease‘的問題

在多個視圖中,若是有使用共用的樣式代碼,能夠把它們移至CSS文件中去。今天Insus.NET就舉例一個例子來講明。

好比前2篇中《ASP.NET MVC圖片管理(上傳,預覽與顯示)》http://www.cnblogs.com/insus/p/4620420.html 和《ASP.NET MVC圖片管理(刪除)》http://www.cnblogs.com/insus/p/4623507.html 均有使用樣式代碼,以下:



css

        div, span, font, a, td { font-size: 13px; } table { border-collapse: collapse; border-spacing: 0; border-left: 1px solid #aaa; border-top: 1px solid #aaa; background: #efefef; } th { border-right: 1px solid #888; border-bottom: 1px solid #888; padding: 3px 15px; text-align: center; font-weight: bold; background: #ccc; font-size: 13px; } td { border-right: 1px solid #888; border-bottom: 1px solid #888; padding: 3px 15px; text-align: center; color: #3C3C3C; }
View Code


 在ASP.NET MVC專案project中,找到Content目錄,若是沒有建立一個,而後添加樣式文件:
html

 

建立好以後,把樣式代碼移至css文件中。
mvc

 

接下來,參考這篇《MVC bundle(包紮)CSS或是JS文件》http://www.cnblogs.com/insus/p/3360918.html 。不過此篇的評論有許多網友會趕上下面一些問題,所以這篇完整性來幫你們解決它。asp.net


先找到App_Start目錄,看看是否有BundleConfig.cs文件是否存在,若是有打開來編輯,若是沒有,那添加一個C#類class,並引用命名空間:using System.Web.Optimization;
ide

 

出現紅浪線,是由於project中並無參考與引用到相關的類庫,你能夠參考下面的方法進行參考,你能夠先看看C:\Program Files (x86)\Microsoft Web Tools\Packages路徑下,是否有相關System.Web.Optimization類別包。若是沒有,你可使用NuGet來從網上引用了。
工具

 

在BundleConfig.cs文件添加一個方法RegisterBundles(BundleCollection bundles):
spa

 

App_Start目錄的程序,是在專案運行時,開始運行,因還須要在Global.asax文件中的protected void Application_Start()方法中註冊:
.net

 
如今修改咱們的視圖,把樣式代碼刪除,運行效果:
code


好的,如今咱們使用方法引用樣式文件@System.Web.Optimization.Styles.Render("~/Content/css"):
htm

 

試運行看看:

 

仍是有問題,
Could not load file or assembly 'WebGrease, Version=1.5.1.25624, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

從異常信息來看,還有一個WebGrease沒有引用。咱們使用NuGet來解決它:
後注,開發asp.net mvc程序,學會使用NuGet工具,更新以及使用適合的版本類庫......

相關文章
相關標籤/搜索