是否有缺乏双向序列化的解决方法

时间:2010-01-21 03:59:06

标签: linq-to-sql linq-to-objects

在我的项目中,我们序列化了断开连接的Linq-to-SQL实体(主要是为了在回发之间保留它们)。使用的代码非常简单:

public static string Serialize<P>(this P entity)
{
    StringWriter writer = new StringWriter();
    XmlTextWriter xmlWriter = new XmlTextWriter(writer);
    DataContractSerializer serializer = new DataContractSerializer(typeof(P));
    serializer.WriteObject(xmlWriter, entity);
    return writer.ToString();
}

它工作正常,但在反序列化后,该对象的所有EntityRef子节点都消失了,只替换为外键值。看起来这个问题是由于缺乏双向序列化。

这个问题是否存在解决方法?

1 个答案:

答案 0 :(得分:0)

尝试在Linq2Sql Dbml文件上将Serialization Mode属性更改为“Unidirectional”。在Web服务中使用L2S时遇到了这个问题。