我正在使用Visual Studio 2008和第三方库开发ASP.NET Web应用程序。
在我的开发环境中,一切都很好。如果在Debug配置中部署Web应用程序,情况也会很好。但是,在Release模式下部署时,SerializationExceptions会间歇性地出现,从而破坏其他功能。
在Windows事件日志中,可以看到以下错误:
“发生了未处理的异常,并且该流程已终止。
应用程序ID:DefaultDomain
流程ID:3972
异常:System.Runtime.Serialization.SerializationException
消息:无法找到程序集'MyThirdPartyLibrary,Version = 1.234.5.67,Culture = neutral,PublicKeyToken = 3d67ed1f87d44c89'。
StackTrace:at System.Runtime.Serialization.Formatters.Binary.BinaryAssemblyInfo.GetAssembly() 在System.Runtime.Serialization.Formatters.Binary.ObjectReader.GetType(BinaryAsse mblyInfo assemblyInfo,String name) at System.Runtime.Serialization.Formatters.Binary.ObjectMap..ctor(String objectName,String [] memberNames,BinaryTypeEnum [] binaryTypeEnumA,Object [] typeInformationA,Int32 [] memberAssemIds,ObjectReader objectReader,Int32 objectId,BinaryAssemblyInfo assemblyInfo,SizedArray assemIdToAssemblyTable ) at System.Runtime.Serialization.Formatters.Binary.ObjectMap.Create(String name,String [] memberNames,BinaryTypeEnum [] binaryTypeEnumA,Object [] typeInformationA,Int32 [] memberAssemIds,ObjectReader objectReader,Int32 objectId,BinaryAssemblyInfo assemblyInfo,SizedArray assemIdToAssemblyTable) 在System.Runtime.Serialization.Formatters.Binary .__ BinaryParser.ReadObjectWithMa pTyped(BinaryObjectWithMapTyped record) 在System.Runtime.Serialization.Formatters.Binary .__ BinaryParser.ReadObjectWithMa pTyped(BinaryHeaderEnum binaryHeaderEnum) 在System.Runtime.Serialization.Formatters.Binary .__ BinaryParser.Run() at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(Header Handler handler,__BinaryParser serParser,Boolean fCheck,Boolean isCrossAppDomain,IMethodCallMessage methodCallMessage) 在System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Str eam serializationStream,HeaderHandler handler,Boolean fCheck,Boolean isCrossAppDomain,IMethodCallMessage methodCallMessage) 在System.Runtime.Remoting.Channels.CrossAppDomainSerializer.DeserializeObject(Me moryStream stm) 在System.AppDomain.Deserialize(Byte [] blob) 在System.AppDomain.UnmarshalObject(Byte [] blob)
有关详细信息,请参阅http://go.microsoft.com/fwlink/events.asp上的“帮助和支持中心”。
使用FUSLOGVW.exe(即程序集绑定日志查看器),我可以看到问题是IIS尝试在目录C:\ windows \ system32 \ inetsrv中找到MyThirdPartyLibrary。它拒绝查看实际位于DLL的Web应用程序的bin文件夹。
有谁知道问题是什么?
谢谢,
卡尔文
答案 0 :(得分:0)
迟到的答案,但也许有人正在努力解决这个问题......这就是我找到的:
Similar error on this question, which leads to some options
看起来真的错误对你来说是隐藏的。
1)您需要使用IIS Debug tool
2)Or build and use a module获取详细信息。