2017-09-14 192 views
0

我想解决一个问题,我们具体在我们的Web应用上使用REDIS缓存,但需要帮助理解堆栈跟踪。调用的目标引发了异常。 (REDIS缓存)

当用户查看报表查看器时,我们间歇性地获取了Exception has been thrown by the target of an invocation登录错误表,但没有迹象表明客户端出现任何问题。

我读过这篇文章:How to solve: "exception was thrown by the target of invocation" C#但是它似乎并没有涵盖我们的具体问题。

由我们的记录器记录的堆栈跟踪;

 at System.RuntimeMethodHandle.SerializationInvoke(IRuntimeMethodInfo method, Object target, SerializationInfo info, StreamingContext& context)  
    at System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(Object obj, SerializationInfo info, StreamingContext context)  
    at System.Runtime.Serialization.ObjectManager.FixupSpecialObject(ObjectHolder holder)  
    at System.Runtime.Serialization.ObjectManager.DoFixups()  
    at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)  
    at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)  
    at Microsoft.Web.Redis.BinarySerializer.Deserialize(Byte[] data) in D:\BuildAgent\work\f55792526e6d9089\src\Shared\BinarySerializer.cs:line 37  
    at Microsoft.Web.Redis.ChangeTrackingSessionStateItemCollection.GetData(String normalizedName) in D:\BuildAgent\work\f55792526e6d9089\src\Shared\ChangeTrackingSessionStateItemCollection.cs:line 156  
    at Microsoft.Web.Redis.ChangeTrackingSessionStateItemCollection.get_Item(String name) in D:\BuildAgent\work\f55792526e6d9089\src\Shared\ChangeTrackingSessionStateItemCollection.cs:line 141  
    at System.Web.SessionState.HttpSessionStateContainer.get_Item(String name)  
    at Microsoft.Reporting.WebForms.ViewerDataOperation..ctor()  
    at Microsoft.Reporting.WebForms.HttpHandler.GetHandler(String operationType)  
    at Microsoft.Reporting.WebForms.HttpHandler.ProcessRequest(HttpContext context)  
    at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()  
    at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

回答

0

看起来是反序列化期间的问题。类的定义在序列化和反序列化之间有什么变化?

+0

我不确定,那会是redis缓存的具体问题吗? –

相关问题