我在 IIS7 中建立了一个名为 CCESD 的网站;我的应用程序根文件夹是 D:\Websites\CCESD\CCESD。我在 D:\Websites\CCESD\CCESD\BinCommon 也有一个包含第三方程序集(并非所有这些程序集都是强名称)的文件夹:这是因为我在 IIS 的这个根站点下还有许多其他 Web 应用程序,它们将共享 DLL,其中一些是非托管代码,因此无法进入 GAC。我的 web.config 文件如下所示:
<compilation defaultLanguage="c#" debug="true" targetFramework="4.0">
<assemblies>
...
<add assembly="Telerik.Web.UI, Version=2012.1.288.40, Culture=neutral, PublicKeyToken=121FAE78165BA3D4" />
</assemblies>
</compilation>
...
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="BinCommon" />
</assemblyBinding>
</runtime>
但是,当我尝试运行 Web 应用程序时,出现以下错误(在启用程序集绑定错误日志记录之后):
解析器错误消息:无法加载文件或程序集“Telerik.Web.UI,版本=2012.1.288.40,文化=中性,PublicKeyToken=121fae78165ba3d4”或其依赖项之一。该系统找不到指定的文件。
源文件:D:\Websites\CCESD\CCESD\web.config 行:144
程序集加载跟踪:以下信息有助于确定为什么无法加载程序集“Telerik.Web.UI, Version=2012.1.288.40, Culture=neutral, PublicKeyToken=121fae78165ba3d4”。
从以下位置加载程序集管理器:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
在可执行文件 c:\windows\system32\inetsrv\w3wp.exe 下运行
--- 详细的错误日志如下。
=== 预绑定状态信息 ===
日志:用户 = IIS APPPOOL\CCESD
日志:DisplayName = Telerik.Web.UI,Version=2012.1.288.40,Culture=neutral,PublicKeyToken=121fae78165ba3d4(完全指定)
日志:Appbase = file:///D:/Websites/CCESD/CCESD/
日志:初始 PrivatePath = D:\Websites\CCESD\CCESD\bin 调用程序集:(未知)。===
LOG:此绑定在默认加载上下文中开始。
LOG:使用应用程序配置文件:D:\Websites\CCESD\CCESD\web.configLOG:使用主机配置文件:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet.config
LOG:使用 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config 中的机器配置文件。
日志:政策后参考:Telerik.Web.UI,版本=2012.1.288.40,文化=中性,PublicKeyToken=121fae78165ba3d4
日志:正在尝试下载新的 URL 文件:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET Files/root/e11e9098/9e133b72/Telerik.Web.UI.DLL。
日志:尝试下载新 URL 文件:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET Files/root/e11e9098/9e133b72/Telerik.Web.UI/Telerik.Web.UI .DLL。
日志:尝试下载新的 URL 文件:///D:/Websites/CCESD/CCESD/bin/Telerik.Web.UI.DLL。
日志:尝试下载新的 URL 文件:///D:/Websites/CCESD/CCESD/bin/Telerik.Web.UI/Telerik.Web.UI.DLL。
日志:正在尝试下载新的 URL 文件:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET Files/root/e11e9098/9e133b72/Telerik.Web.UI.EXE。
日志:尝试下载新 URL 文件:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET Files/root/e11e9098/9e133b72/Telerik.Web.UI/Telerik.Web.UI 。EXE文件。
日志:正在尝试下载新的 URL 文件:///D:/Websites/CCESD/CCESD/bin/Telerik.Web.UI.EXE。
日志:正在尝试下载新的 URL 文件:///D:/Websites/CCESD/CCESD/bin/Telerik.Web.UI/Telerik.Web.UI.EXE。
我已检查该文件是否存在并且版本和公钥信息是否正确。我究竟做错了什么?