【问题标题】:Could not load file or assembly Telerik.Web.UI in ASP.NET无法在 ASP.NET 中加载文件或程序集 Telerik.Web.UI
【发布时间】:2015-12-06 10:46:27
【问题描述】:

当我将其更新到版本 2015.2.623.45 时,我有 Telerik 版本 2012.2.607.35

我收到了这个错误:

无法加载文件或程序集'Telerik.Web.UI, 版本=2012.2.607.35,文化=中性,公钥 Token=121fae78165ba3d4' 或其依赖项之一。位于 程序集的清单定义与程序集引用不匹配。 (HRESULT 异常:0x80131040)

我在项目引用中将所有引用telerik替换为2015.2.623.45版本,但错误仍然存​​在。

【问题讨论】:

标签: c# asp.net .net telerik


【解决方案1】:

你应该在 web.config 文件中定义程序集

<dependentAssembly>
    <assemblyIdentity name="YourDllFile" publicKeyToken="2780ccd10d57b246" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-YourDllFileVersion" newVersion="YourDllFileVersion" />
</dependentAssembly>


<dependentAssembly>
    <assemblyIdentity name="Telerik.Web.UI" publicKeyToken="121fae78165ba3d4" />
    <bindingRedirect oldVersion="1.0.0.0-2015.2.600.45" newVersion="2015.2.623.45" />
</dependentAssembly>

【讨论】:

    【解决方案2】:

    虽然程序集绑定重定向是解决此问题的一种方法,但正如答案所建议的那样,我建议您找到完全限定的程序集引用并将其设为非完全限定。它很可能是 web.config 或用户控件中的 Register 指令。这样做会使以后的更新更容易,否则下次升级时会出现同样的错误,除非你也更新了 bindingRedirect。

    【讨论】:

      【解决方案3】:

      我遇到了类似的问题。我检查了我网站上 bin 文件夹中的 .dll 版本以及引发错误的版本。由于引发错误的代码不是我自己的,我意识到 .dll 的版本是第 3 方代码的依赖项。事实证明,我的 bin 中的 .dll 已被旧版本覆盖。

      解决方案是将正确版本的 .dll 放在 bin 文件夹中(因为它最初是随应用程序安装的)似乎更新无法安装较新版本。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-01-29
        • 2012-11-11
        相关资源
        最近更新 更多