如果没有进入这是否是一个很好的或坏的想法:

是它能够存储皇宫-对-SQL域中的对象ASP.NET 届会议,在本届会议 进程?

[编辑] 我目前得到的以下错误,并询问这个问题,因为我怀疑皇宫-对-SQL的对象:

无法serialize本届会议的状态。在会话"和"Sql server'模式,ASP.NET 将serialize会议国家的对象,并因此不可串行的对象或MarshalByRef对象是不能容许的。同样的限制也适用,如果类似的化通过的定义会议的国家存在"自定义"模式。[/编辑]

例如

Session["Zoo"] = new Zoo() { 
                         new Lion(),
                         new Tiger(), 
                         new Elephant()
                  }

其中:

  • 动物园,狮子,老虎,象所有出来的一个ZooDataContext

和网络。配置文件中包含的

<sessionState
       mode="StateServer"
       stateConnectionString="tcpip=127.0.0.1:42424"
       stateNetworkTimeout="10"
       sqlConnectionString="SqlStateConnectionString"
       sqlCommandTimeout="30"
       timeout="20"
       regenerateExpiredSessionId="true"/>
有帮助吗?

解决方案

Serialize他们使用datacontractserializer前存在届会或其他任何可能想要serialize... 最近讨论了这里:

http://social.msdn.microsoft.com/Forums/en-US/linqtosql/thread/81c84ff4-059b-474f-9c69-b8c59027fd48

其他提示

使用二元格式(如户使用我相信), 你会需要产生的代码自己的申请(I做,目前有一个Linq2Sql T4模板)。

以下需要作为标记 [NonSerialized]:

  • EntityRef
  • EntitySet
  • 所有的事件(你会需要想做到这一点,运动对于读者)

也构造逻辑的需要移动到 OnCreated.还必须确保 OnCreated 被称为当反序列化这样的对象可以是有用的。这样做的 [OnDeserializing] 属性。

我会认为你需要标记你的对象为在序列化。我不确定如果有办法这样做所产生的对象,但对于那些你把话,您可以创建一个分类(例如狮子),并给予它的序列化的属性。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top