【转】解决未能加载文件或程序集'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工具,更新以及使用适合的版本类库......

相关文章
相关标签/搜索