0

这是一个冗长的 - 请忍耐..!

我有一个网站,目前使用一个整体的“app_code”dll 文件 - 并且正在考虑将 dll 分成几部分以便更好地维护。

我正在使用 web.config 中的部分将我的 app_code 拆分为多个文件夹式 dll 文件。该部分如下所示:

<codeSubDirectories>
  <add directoryName="CodeSubDir1"/>
  <add directoryName="CodeSubDir2"/>
  ...
</codeSubDirectories>

我已经为“app_code”文件夹中的每个文件创建了单独的子文件夹,.cs除了少数相互引用的 .cs 文件 - 因此需要放在同一个子文件夹中。.cs 文件被移动到其相应的子文件夹。在这些更改之后,“app_code”文件夹下没有 .cs 文件。我已经设置了codeSubDirectories中元素的顺序,以便处理所有其他引用。

该网站在我的开发中成功构建和发布。环境。发布时选中“允许此预编译站点可更新”和“使用固定命名和单页程序集”复选框。没有app_code.dll,并且app_code.compiled在发布期间会创建文件,因为“app_code”文件夹下没有 .cs 文件。app_code 下的每个子文件夹都发布为app_subcode_sub_folder_name.dllapp_subcode_sub_folder_name.compiled

该网站及其发布的版本在我的开发中也可以正常工作。环境。

在我将发布的文件更新到我的暂存设置 [.NET 3.5/IIS 6/Win 2003]后,我收到这两个错误 [在两个单独的 URL 上]:

URL-1 上的错误:
无法加载文件或程序集“App_Code,Version=0.0.0.0,Culture=neutral,PublicKeyToken=null”或其依赖项之一。该系统找不到指定的文件。说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。异常详细信息:System.IO.FileNotFoundException:无法加载文件或程序集“App_Code,Version=0.0.0.0,Culture=neutral,PublicKeyToken=null”或其依赖项之一。该系统找不到指定的文件。源文件:xxx\v2.0.50727\Temporary ASP.NET Files\xxx\xxx\xxx\App_Web_xxx.8.cs 行:0

URL-2 上的错误: 找不到资源。说明:HTTP 404。您要查找的资源(或其依赖项之一)可能已被删除、名称已更改或暂时不可用。

我的分段更新过程是:我将"app_subcode_xxx.dll""app_subcode_xxx.compiled"文件复制到“bin”文件夹并删除现有的“app_code.dll”和“app_code.compiled”文件。我在登台时将codeSubDirectories部分添加到 web.config 中。

我已经在GAC、代码和注册表中搜索了对程序集“app_code”的任何引用,但没有成功。我错过了什么?是否需要任何其他步骤才能在我的临时站点上进行这项工作?我是否还需要从 dev.xml 复制所有其他已发布的 DLL。分期?

4

1 回答 1

0

将所有 dll 和编译文件从发布文件夹复制到登台环境。可能是其他 dll 和编译文件仍在引用应用程序代码。

于 2012-12-27T15:10:31.810 回答