这是一个冗长的 - 请忍耐..!
我有一个网站,目前使用一个整体的“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.dll
和app_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。分期?