好的我是SharePoint和ASP的新手,所以请耐心等待......
我想将对象持久化到会话数组以维护回发之间的内容。我在web.config文件中启用了会话数组,如果我使用基本值类型或属于.NET框架的对象,一切正常。
但是如果我尝试保存一个我为其定义类的对象的实例,我会收到一条错误消息“发生意外错误。”,即使我可以单步执行该程序而不会抛出任何错误。< / p>
如何将对象保存到会话数组?
编辑:
所以在按照建议启动callstack后,我收到以下错误:
无法序列化会话状态。 在'StateServer'和'SQLServer'模式下, ASP.NET将序列化会话 状态对象,因此 不可序列化的对象或 MarshalByRef对象不是 允许的。同样的限制 适用于类似的序列化 由自定义会话状态存储完成 在“自定义”模式下。
我想我可以序列化我的对象...配置文件中是否有设置使其不需要SQL Server?
答案 0 :(得分:2)
使用[Serializable]属性标记您的自定义类。如果您的类具有引用其他自定义类的字段,请确保它们也具有[Serializable]属性
答案 1 :(得分:0)
是否在web.config中启用了SharePoint会话HttpModule?
<add name="Session" type="System.Web.SessionState.SessionStateModule"/>
如果在web.config文件中设置Callstack =“true”,您可能会看到“[错误原因]因为会话状态被禁用”