无法加载文件或程序集“App_Code”或其中一个依赖项。

时间:2018-04-03 03:31:14

标签: asp.net app-code

问题:我想将修改后的代码部署到Web服务器中。 Web服务器将IIS版本设置为V2.0。现在我已经在4.0版的本地机器上开发并发布了代码。 (有App_code.dll作为所有dll文件的一部分)。

现在每当我与App_code.dll一起部署所有文件时,我都会收到以下错误:“ 无法加载文件或程序集“App_Code”或其依赖项之一。 此程序集由比当前加载的运行时更新的运行时构建,无法加载“

1)我的问题是如何在旧版本中构建App_code.dll。 2)我尝试在发布时将目标框架更改为V2.0,但之后它不起作用,因为来自其他dll的AJAX函数没有编译..

任何人都可以建议如何运行该网站..

非常感谢帮助。

由于

2 个答案:

答案 0 :(得分:0)

对于我给出的答案感到抱歉......但试试这个......

尝试将<codeBase>元素添加到应用程序配置文件中,以指定每个dll的确切位置以及它所需的.Net版本。显然这是有效的,因为<codebase>在每次需要加载程序集时都会检查之前探测启发式启动。

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="sharedlibA" culture="neutral" publicKeyToken="..." />
      <codeBase version="1.0.0.0" href="bin\sharedlibA.dll" />
    </dependentAssembly>
    <dependentAssembly>
      <assemblyIdentity name="sharedlibB" culture="neutral" publicKeyToken="..." />
      <codeBase version="1.0.0.0" href="bin\sharedlibB.dll" />
    </dependentAssembly>
  </assemblyBinding>
</runtime>

如果这不起作用,请尝试this

答案 1 :(得分:0)

最新答案,但是,我正在为未来的观众编写此书。 将应用程序发布到服务器后,我遇到了同样的错误。 我想像是这样做的。

发布时,“设置”中有配置。

enter image description here

在“发布”部分中,有一个名为

的选项

发布期间预编译

您必须选中复选框,然后保存然后发布。这将获取您的代码文件.vb / .cs并将其转换为已编译的DLL文件。 就我而言,它未被选中。