【问题标题】:Unhandled IIS Exception - How can I track it down未处理的 IIS 异常 - 我如何追踪它
【发布时间】:2009-11-25 19:24:54
【问题描述】:

我在事件日志中看到以下错误。它来自我们的 ASP.Net 应用程序。我无法追踪导致错误的原因。任何建议表示赞赏!

  • 操作系统:Windows Server 2000
  • 网络服务器:IIS 6
  • 应用程序:ASP.Net v3.5

错误日志

[MachineName] 记录了以下内容 IIS 错误

详细信息:ComputerName=[ComputerName] 用户=未指定日志文件=应用程序 类型=错误事件类型=1 源名称=ASP.NET 2.0.50727.0 类别=0 类别字符串=不 指定事件代码=1334 事件ID=-1073740490 时间生成=20091125101806.000000-360 写时间=20091125101806.000000-360 消息=未处理的异常 发生并且过程是 终止。

应用程序 ID:默认域进程 ID:1440 例外: System.Runtime.Serialization.SerializationException 消息:找不到程序集 'Company.Common, 版本=1.0.0.0, Culture=neutral, PublicKeyToken=null'。

堆栈跟踪:在 System.Runtime.Serialization.Formatters.Binary.BinaryAssemblyInfo.GetAssembly() 在 System.Runtime.Serialization.Formatters.Binary.ObjectReader.GetType(BinaryAssemblyInfo 装配信息,字符串名称)在 System.Runtime.Serialization.Formatters.Binary.ObjectMap..ctor(字符串 对象名,字符串 [] 成员名, BinaryTypeEnum[] binaryTypeEnumA, 对象[] 类型信息A,Int32[] memberAssemIds, ObjectReader objectReader, Int32 objectId, BinaryAssemblyInfo 组装信息, SizedArray assemIdToAssemblyTable)
在 System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadObjectWithMapTyped(BinaryObjectWithMapTyped 记录)在 System.Runtime.Serialization.Formatters.Binary.__BinaryParser.Run() 在 System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler 处理程序,__BinaryParser serParser, 布尔 fCheck,布尔 isCrossAppDomain, IMethodCallMessage 方法调用消息)在 System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(流 序列化流,HeaderHandler 处理程序,布尔值 fCheck,布尔值 isCrossAppDomain, IMethodCallMessage 方法调用消息)在 System.Runtime.Remoting.Channels.CrossAppDomainSerializer.DeserializeObject(MemoryStream stm)在 System.AppDomain.Deserialize(字节 [] 斑点)在 System.AppDomain.UnmarshalObject(字节 [] 斑点)

【问题讨论】:

    标签: asp.net debugging iis event-log


    【解决方案1】:

    我创建了一个自定义的非处理异常模块,它允许检索有关错误来源的更多信息,以及问题的最终解决方案。

    这是一个 codeplex 项目的链接,该项目包含未处理异常模块的代码: http://unhandledexception.codeplex.com/SourceControl/changeset/view/80132

    【讨论】:

    【解决方案2】:

    试试 IIS 调试诊断工具

    http://support.microsoft.com/kb/919789

    【讨论】:

      【解决方案3】:

      我正在查看文本“无法找到程序集 'Company.Common, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'”。

      您是否缺少程序集,或者您有版本问题?

      【讨论】:

        【解决方案4】:

        错误提示找不到程序集。如果它在 bin 文件夹中并且格式正确,那么可能是权限错误?

        您的 Company.Common 程序集是否具有允许您的 IIS AppPool 身份读取它的权限?

        您还可以仔细检查以确保程序集列在 web.config 的 system.web/compile/assembly 部分中。

        【讨论】:

        • 没有设置异常权限,它们看起来都很标准并且适用于所有其他代码。它不在 system.web/compiled/assembly 中,但它没有被强签名或在 GAC 中,它都可以正常编译。
        • 您是在做服务器端编译(作为“网站”项目)还是客户端编译(“Web 应用程序”项目)?
        猜你喜欢
        • 1970-01-01
        • 2020-08-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-10-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多