C# + asp.Net + 自定义 Sybase SessionState 提供程序 + ReportViewer = 一些报告崩溃
Posted
技术标签:
【中文标题】C# + asp.Net + 自定义 Sybase SessionState 提供程序 + ReportViewer = 一些报告崩溃【英文标题】:C# + asp.Net + Custom Sybase SessionState provider + ReportViewer = some reports crash 【发布时间】:2009-04-02 21:24:28 【问题描述】:我正在使用自定义会话状态提供程序将会话数据存储在 Sybase 数据库中。
它运行良好,但报表查看器控件中的某些报表始终导致以下崩溃。
System.Web.HttpException:会话状态信息无效并且可能已损坏。 生成时间:2009 年 4 月 2 日星期四 20:21:47 GMT
System.Web.HttpException:会话状态信息无效并且可能已损坏。 在 System.Web.SessionState.SessionStateItemCollection.Deserialize(BinaryReader 阅读器) 在 JCDCHelper.Providers.JCDCSybaseSessionProvider.SybaseCustomSessionData.Deserialize(HttpContext 上下文,字符串 serializedItems,Int32 超时) 在 JCDCHelper.Providers.JCDCSybaseSessionProvider.SybaseCustomSessionData.GetSessionStoreItem(布尔 lockRecord,HttpContext 上下文,字符串 id,Boolean& 锁定,TimeSpan& lockAge,Object& lockId,SessionStateActions& actionFlags) 在 JCDCHelper.Providers.JCDCSybaseSessionProvider.SybaseCustomSessionData.GetItemExclusive(HttpContext 上下文、字符串 id、Boolean& 锁定、TimeSpan& lockAge、Object& lockId、SessionStateActions& actionFlags) 在 System.Web.SessionState.SessionStateModule.GetSessionStateItem() 在 System.Web.SessionState.SessionStateModule.BeginAcquireState(对象源,EventArgs e,AsyncCallback cb,对象 extraData) 在 System.Web.HttpApplication.AsyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
我已经尝试阻止 null keyNames,但没有任何乐趣。
我已经尝试手动序列化包含报告数据的实体对象,它们可以很好地序列化和反序列化。
我的内存没有用完,相同的报告会崩溃,并且无论我的内存负载如何,相同的报告都不会崩溃。
我已经用谷歌搜索了所有我能想到的东西,但我一头雾水。
其他一切都按预期工作,序列化和反序列化都很好。
有人有什么想法或提示吗?
谢谢
卡拉丁-
【问题讨论】:
【参考方案1】:我们放弃了这一点,并在水晶报告中重新编写了报告,并且 手动构建 PDF。 (不使用 CrystalReportsViewer)和它 工作。
希望对某人有所帮助。
【讨论】:
以上是关于C# + asp.Net + 自定义 Sybase SessionState 提供程序 + ReportViewer = 一些报告崩溃的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Asp.NET Core WEB API 中使用 .Net (C#) 在 Payload 中创建具有自定义 JSON 声明的 JWT 令牌
ASP.NET C#中怎么让 httpcontext.current.user.identity.name 获取为自定义的值