WebApp中的App_Code加载错误

时间:2012-03-14 14:38:45

标签: c# asp.net iis

本周早些时候,我们的ASP.NET 2.0 Web应用程序的最新部署开始在不可预测(不易重现)的时间引发以下错误:

  

分析程序错误

     

说明:解析为此请求提供服务所需的资源时发生错误。请查看以下特定的解析错误详细信息并适当修改源文件。

     

分析程序错误消息:无法加载文件或程序集“App_Code,Version = 2.5.0.0,Culture = en-US,PublicKeyToken = null”或其依赖项之一。系统找不到指定的文件。

     

来源错误

Line 1:  <%@ page language="c#" inherits="OurAppNamespace.Migrated_Index, App_Web_01zualsq" validaterequest="false" maxPageStateFieldLength="500" %>
Line 2:  
Line 3:  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >

一旦部署开始抛出此错误,它就不会停止,直到我们重新部署或修改Web.Config文件。不用说,我们已反复检查并验证App_Code.dll版本2.5.0.0是否在bin目录中且​​具有有效权限。

我们最近没有做出任何重大更改,我们没有进行任何配置更改,因此我对此问题的出现有点不知所措。错误中列出的原因不是问题,因为文件存在。我习惯了导致类似错误的权限问题,但更改文件权限只能暂时修复它。

此错误的实际根本原因是什么,我们如何解决?

1 个答案:

答案 0 :(得分:0)

最终通过消除过程找到问题,通过最近的更改向后工作。这对于这些部署是预先编译但可更新的Web应用程序而言意外重要(对我来说是意外的)。我认为ASP.NET错误消息在诊断问题方面不太有用。

事实证明,在通过删除特定于Visual Studio的文件(.sln.vsmdi等)清理构建目录的过程中,我们还删除了PrecompiledApp.Config。因为应用程序继续工作了一段时间,我们得出结论,它没有与我们使用的特定类型的预编译一起使用。显然,我们错了。

我们的问题是通过将PrecompiledApp.Config恢复到受影响的部署并更新Web.Config上次修改日期来解决的,以便IIS能够接收更改。