2010-03-11 34 views
1

我需要将通过a.dbml Linq-To-Sql文件创建的一些实体放入会话状态。因为我正在使用out-of-proc状态服务器,所以它们需要可序列化。如何将Linq序列化为SQL实体以用于进程外状态?

我该如何做到这一点?

我已经尝试将.dbml文件中的序列化模式设置为'单向'。

回答

2

大多数情况下,不可能将LINQ to SQL实体序列化,因为它们引用了所有不能被序列化的对象,或者最终将序列化一个巨大的对象图。

最好创建Data Transfer Objects,您专门为此创建的。您可以创建这样的对象[Serializable],它允许将它们保存在超出proc状态(或使用Web服务发送给客户端)。 DTO可以完全控制序列化的内容,因为它们将包含原始类型或其他DTO的集合。

相关问题