Linq to sql 未使用DataContractSerializer序列化连接的实体
我正在使用LINQtoSQL,并且将序列化模式设置为单向 我有两个实体类,Linq to sql 未使用DataContractSerializer序列化连接的实体,linq-to-sql,serialization,.net-4.0,datacontractserializer,Linq To Sql,Serialization,.net 4.0,Datacontractserializer,我正在使用LINQtoSQL,并且将序列化模式设置为单向 我有两个实体类,Country和City,具有一对多关系 DataContractSerializer serializer = new DataContractSerializer(typeof(IList<Country>), new[] { typeof(EntitySet<City>) // I have also tried with typeof(City) }); string x
Country
和City
,具有一对多关系
DataContractSerializer serializer =
new DataContractSerializer(typeof(IList<Country>), new[] {
typeof(EntitySet<City>) // I have also tried with typeof(City)
});
string xml;
using (Db db = new Db()) {
IList<Country> countries = db.Countries.ToList();
// ... some manipulation of the list here, add/remove etc ...
StringBuilder sb = new StringBuilder();
using (XmlWriter writer = XmlWriter.Create(sb))
serializer.WriteObject(writer, countries);
xml = sb.ToString();
}
DataContractSerializer序列化程序=
新的DataContractSerializer(typeof(IList),新的[]{
typeof(EntitySet)//我也尝试过typeof(City)
});
字符串xml;
使用(Db=new Db()){
IList countries=db.countries.ToList();
//…此处对列表进行一些操作,添加/删除等。。。
StringBuilder sb=新的StringBuilder();
使用(XmlWriter=XmlWriter.Create(sb))
serializer.WriteObject(编写器,国家/地区);
xml=sb.ToString();
}
生成的XML字符串中有国家
实体,但没有城市
实体
如何解决此问题?调用ToList()
似乎是导致此问题的原因