我正在尝试在最近从MVC 3转换到MVC 4 beta版的项目中使用新的捆绑功能。它需要一行全局代码。asax, BundleTable.Bundles.RegisterTemplateBundles();),需要使用System.Web.Optimization;在顶端。

当我这样做时,我得到红色的弯曲线条,表示“您是否缺少一个汇编引用?”当我尝试添加引用,并单击对话框中的. net选项卡,从A-Z排序,我没有看到System.Web.Optimization。

如何将此引用添加到我的项目中?


当前回答

在我的情况下,这是一个tfs的问题,因为tfs排除二进制文件,所以Nugget PM找到安装的金块,不更新库 如果你有类似的问题:

转到源代码控制 导航到..\packages\Microsoft.Web.Optimization 添加lib文件夹(取消排除二进制扩展) 更新解决方案并从路径中添加dll引用

注意:包文件夹是在同一级别的解决方案。sln文件

其他回答

使用nuget在包管理器控制台中卸载System.Web.Optimization,如下所示:

Uninstall-Package Microsoft.AspNet.Web.Optimization

然后重新安装:

安装包Microsoft.AspNet.Web.Optimization

也许能为你解决这个问题。

从nuget更新(重新安装)包,你可以使用命令:

update-Package Microsoft.AspNet.Web.Optimization -重新安装

设置为全局。asax application_start(在RELEASE模式等):

BundleTable.EnableOptimizations = **true**;

在DEBUG模式下启用缩小并更改为false以单独呈现所有脚本和样式文件。

在我的情况下,这是一个tfs的问题,因为tfs排除二进制文件,所以Nugget PM找到安装的金块,不更新库 如果你有类似的问题:

转到源代码控制 导航到..\packages\Microsoft.Web.Optimization 添加lib文件夹(取消排除二进制扩展) 更新解决方案并从路径中添加dll引用

注意:包文件夹是在同一级别的解决方案。sln文件

更新 1.1版。x可用,请阅读发布说明:https://www.nuget.org/packages/Microsoft.AspNet.Web.Optimization


优化包现在已经过时了。ASP。NET (MVC) 4及以上版本,您应该安装Microsoft ASP。NET Web优化框架:

Install the package from nuget: Install-Package Microsoft.AspNet.Web.Optimization Create and configure bundle(s) in App_Start\BundleConfig.cs: public class BundleConfig { public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/Scripts/jquery").Include( "~/Scripts/Lib/jquery/jquery-{version}.js", "~/Scripts/Lib/jquery/jquery.*", "~/Scripts/Lib/jquery/jquery-ui-{version}.js") ); bundles.Add(new ScriptBundle("~/Scripts/knockout").Include( "~/Scripts/Lib/knockout/knockout-{version}.js", "~/Scripts/Lib/knockout/knockout-deferred-updates.js") ); } } Call the RegisterBundles() function from Application_Start() in your global.asax.cs: using System.Web.Optimization; protected void Application_Start() { ... BundleConfig.RegisterBundles(BundleTable.Bundles); ... } In your view.cshtml include the Optimization namespace and render the bundle(s): @using System.Web.Optimization @Scripts.Render("~/Scripts/jquery") @Scripts.Render("~/Scripts/knockout")

更多信息请参见http://www.asp.net/mvc/overview/performance/bundling-and-minification