CS0103: The name ‘Scripts’ does not exist in the current context解决方法

更新:这个bug在ASP.NET MVC 4正式版已经没有了。

今天试玩VS2012里的ASP.NET MVC4,用Controller里用Entity Framework生成模版后,发现页面报错CS0103: The name ‘Scripts’ does not exist in the current context。

看了一下原因是MVC4里自动生成的cshtml里都会自动包含下面几行js脚本引用

@section Scripts {
@Scripts.Render(“~/bundles/jqueryval”)
}

@Styles和@Scripts是MVC4里新加的位于System.Web.Optimization下的辅助类,主要用于将多个CSS和JavaScript脚本文件压缩并打包成单个文件。如果项目里没有对System.Web.Optimization,则上面code编译无法通过。

解决方法:在NuGet包管理器里搜索Optimization,安装完毕后在MVC4的web.config里namespace节点下多加一行<add namespace=”System.Web.Optimization” />。image

Leave a Reply

Your email address will not be published. Required fields are marked *