虽然我已经为Microsoft.AspNet.Web.Optimization安装了nuget数据包但我仍然遇到此错误...
无法加载文件或程序集'System.Web.Optimization, Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'
显然,Nuget中的那个是v.1.13,而我的解决方案中引用的那个是v.1.0.0 ...问题是,我找不到匹配这两个的方法。我找不到v.1.0.0的安装或删除或覆盖1.1.3的1.1.0的方法。
对此有何帮助?
您需要查看的任何代码,请告诉我,我会更新问题。
答案 0 :(得分:4)
我可以通过在web.config中添加以下内容来解决此问题:
<configuration>
<runtime>
<dependentAssembly>
<assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="1.1.3.0" />
</dependentAssembly>
</runtime>
</configuration>
答案 1 :(得分:1)
我正在从事的项目是.Net 4.5〜,之后我遇到了这个问题
安装以下Nuget软件包:
Install-Package Microsoft.AspNet.Web.Optimization -Version 1.1.3
将以下脚本标记添加到* .aspx页面:
<%: Scripts.Render("~/bundles/YourScriptsBundleName") %>
使用以下命令更新web.config:
<namespaces>
<add namespace="System.Web.Optimization"/>
</namespaces>
因此,为解决此问题,我按照上述悬崖的回答进行了更改,但有一点改动:
<dependentAssembly>
<assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="1.1.0.0" />
</dependentAssembly>
答案 2 :(得分:0)
我认为您必须从项目属性中更改“目标框架”。 “。Net Framework 3.5”应该没问题。
您必须确保“平台目标”设置正确。您可以在“构建”标签下的项目属性中进行更改。如果正在运行的应用程序是64位,请将其更改为 x64 ,否则(32位)将其保持为 x86 。注意不要选择“任何CPU”。
希望这些能帮到你。
阿里夫。
答案 3 :(得分:0)
今天我通过在GIT中的分支之间切换遇到了同样的问题。
如果您想使用nuget访问特定版本的软件包,那么已安装的软件包有-version <value>
选项。
因此,您可以编写一个nuge卸载程序,然后编写特定程序包的nuget安装程序以及其他版本信息。
答案 4 :(得分:0)
以下是我修复它的方法。使用以下命令重新安装软件包:
Install-Package Microsoft.AspNet.Web.Optimization
如果您已经安装了它,则必须从packages.config中删除此行:
<package id="Microsoft.AspNet.Web.Optimization" version="1.1.3" targetFramework="net45" />