我在使用Telerik.Web.UI.dll version 2014.1.403.45
的Windows Server 2012上运行了一个应用程序。
在最新部署期间,/ bin文件夹下的Telerik dll已更新为2015.1.401.40
。
由于新的DLL,一些功能停止工作。
当我用旧版本替换服务器上的DLL时,我得到以下错误
Parser Error Message: Could not load file or assembly 'Telerik.Web.UI, Version=2015.1.401.40, Culture=neutral, PublicKeyToken=121fae78165ba3d4' or one of its dependencies.
The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
我也尝试过装配
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Telerik.Web.UI" publicKeyToken="121fae78165ba3d4" culture="neutral"/>
<bindingRedirect oldVersion="2015.1.401.40" newVersion="2014.1.403.45"/>
<assemblyIdentity name="Microsoft.WindowsAzure.Storage" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-2.1.0.4" newVersion="2.1.0.4"/>
</dependentAssembly>
</assemblyBinding>
我仍然在犯同样的错误。
有没有办法处理这个问题而不再重新考虑整个代码?
答案 0 :(得分:0)
我遇到了这种类型的问题,但在不同的情况下(在单元测试中)。为此,我清除了Bin。然后做了一个构建。然后问题解决了我。
答案 1 :(得分:0)
也许有办法,但我会重新部署。通过引用旧版本再次构建它。这是确保所有引用都指向同一个程序集的最安全的方法和最佳方法。
要完全确定正确的引用,请将dll设置为copy to local
为true
,然后将其复制并替换为服务器上的那个。