【问题标题】:assembly 'Telerik.Web.UI, Version=xxxx, Culture=neutral, PublicKeyToken=xxxx' could not be loaded程序集“Telerik.Web.UI,版本=xxxx,文化=中性,PublicKeyToken=xxxx”无法加载
【发布时间】:2012-01-29 18:32:26
【问题描述】:

问:

只有当我从生产服务器尝试我的网站时,我才会遇到以下问题。

在本地一切都很好。

装配负载跟踪:以下信息可能有助于 确定为什么程序集 'Telerik.Web.UI, Version=2011.2.712.35, Culture=neutral, PublicKeyToken=121fae78165ba3d4' 无法加载。

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

注意:如果我将 Telerik dll 粘贴到 bin 文件夹中,问题就解决了。

但我想知道原因,以及解决此问题的任何方法,而无需将 dll 复制并粘贴到 bin 文件夹中。

【问题讨论】:

  • 您是否在共享托管服务上托管过?
  • 如果我理解你,是的。
  • Telerik.Web.UI 体积很大,有时会导致应用程序池在共享主机上回收。
  • 请问如何解决这个问题

标签: asp.net visual-studio deployment reference assemblies


【解决方案1】:

如果我很好理解您的问题,请尝试将此文件作为参考包含在您的项目中,因此每次进行部署时,默认情况下都会将其包含在 bin 文件夹中。

这是为了避免每次部署时都复制文件。

让我知道这是否适合您的问题。

更新:根据您的评论,请检查我附上的图片,并按照我的说明进行操作。

1- 打开“references”并选择您的“telerik”Dll

2- 右键单击​​它并选择“属性”,或者直接按“F4”。

3- 检查选项“Copy Local”是否为True,如果不是,则更改它。

4- 进行另一个部署,现在假设将所需的 Dll 复制到 bin 文件夹中。

5- 画一个大大的笑容,问题就解决了!!。 :)

如果这能正确解决您的问题,请告诉我,谢谢

【讨论】:

  • 我已经这样做了,我有一个参考。但是当我去 bin 文件夹时,没有telerik dll 文件。
  • 检查我更新的答案,如果它解决了您的问题,请告诉我,谢谢。
【解决方案2】:

如果您想在不包含 Telerik DLL 的情况下发布您的网站,主机服务器必须将 Telerik ASP.NET AJAX 库安装到 GAC 中。如果您拥有服务器或对它有专门的访问权限,这没问题。只需在生产服务器上运行 Telerik 安装程序,一切就绪(它会将适当的程序集添加到 GAC)。

如果您不拥有服务器,例如您使用共享托管服务的场景,则需要在 bin 文件夹中包含 Telerik DLL。原因是,共享主机可能不允许您将程序集安装到 GAC 中,即使他们这样做了,Telerik 的许可也可能不包括这一点。

为确保您的构建始终具有 Telerik DLL,请转到您的解决方案,参考,选择 Telerik 参考,并将其更改为 Copy Local = true

【讨论】:

  • hmmm,这个方法(最后一个)是不是有性能缺陷的问题?
  • 如果程序集通过 GAC 共享或在 bin 中私下引用,则没有性能差异。 GAC 的目的是使程序集安装一次并由多个应用程序使用,而不必为每个使用它的应用程序在本地复制它。将它安装在生产服务器上会很好,如果您可以管理它,因为您可以从部署中减少 14 MB(上次我检查 Telerik ASP.NET AJAX 程序集是 14+ MB,bleh)。
  • "Telerik.Web.UI 体积很大,有时会导致应用程序池在共享主机上回收。" by dotnetstep
  • 是的,这个程序集很大。我无法谈论有关 Telerik 和应用程序池回收的任何特定问题。但是,这些事实都没有让我觉得与 GAC 与私有部署有任何相关性。这两种部署方法都没有提高性能或稳定性。
猜你喜欢
  • 2017-03-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-17
  • 2015-04-01
  • 2015-06-02
  • 2018-02-05
  • 2021-01-22
相关资源
最近更新 更多