我观察到的问题与 Jidheesh Rajan 提到的问题非常吻合。但是,从 Nuget 包管理器更新包(不指定版本)并不能解决问题。这是我必须做的来解决这个问题。(本质上,我明确地将 WebGrease 更新到了 1.6 版)
在 Visual Studio 的包管理器控制台中,将 WebGrease 显式更新到版本 1.6 。这是命令。
Install-Package WebGrease -Version 1.6
输出应该是
Removing 'WebGrease 1.5.2' from {project name}
将“WebGrease 1.6.0”添加到 {project name} 已成功将“WebGrease 1.6.0”添加到 {project name} 正在卸载“WebGrease 1.5.2”。成功卸载“WebGrease 1.5.2”。
这最终更新了 web.config
assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" /
bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930"
这也导致从 csproj 文件中删除一行。
<WebGreaseLibPath>..\packages\WebGrease.1.5.2\lib</WebGreaseLibPath>
以及 csproj 文件中此节点的更新
<Reference Include="WebGrease, Version=1.5.2.14234, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\WebGrease.1.5.2\lib\WebGrease.dll</HintPath>
<SpecificVersion>False</SpecificVersion>
<Private>True</Private>
</Reference>
对此
<Reference Include="WebGrease, Version=1.6.5135.21930, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\WebGrease.1.6.0\lib\WebGrease.dll</HintPath>
<SpecificVersion>False</SpecificVersion>
<Private>True</Private>
</Reference>
请记住,我在本地机器上没有问题,只是在舞台网络服务器上。我想尽我所能在不更新软件包的情况下解决问题,但这是我唯一的解决方法。