我试图实现一个DataContractSerializer
产生代表我们有点复杂的对象模型的XML文件。 根对象有多个ICollection
特性,其中之一有多个ICollection
性能,倍数,其中有多个ICollection
属性...你的想法。
我饰我所有的相关的类用[DataContract(Name = "foo")]
标签,读取该如何使用问题, Include()
并开始制定出来。 正如我放在一起的顶层,我想知道,如果第二层需要明确申报为好。 这是我到目前为止有:
public void Serialize(string DataCode)
{
Product prod = context.Products
.Include(p => p.Products)
.Include(p => p.References)
.Include(p => p.Dates)
.Include(p => p.Weights)
.Include(p => p.Notes)
.Include(p => p.Rules) // Rules have PriceConditions, which have Prices...
.Include(p => p.DataBooks)
.First(m => m.ProductCode == DataCode);
FileStream fs = new FileStream(path,FileMode.Create);
XmlDictionaryWriter writer = XmlDictionaryWriter.CreateTextWriter(fs);
DataContractSerializer serializer = new DataContractSerializer(typeof(Product));
serializer.WriteObject(writer, prod);
}
所以,我需要做一些与规则,以确保整个结构被写入,或者不Include()
知道隧道深入到结构和加载每个元素?