Связанные объекты не сериализованы с DataContractSerializer - PullRequest
0 голосов
/ 21 января 2011

Я использую LINQ-to-SQL, и в качестве режима сериализации установлено однонаправленное.

У меня есть два класса сущностей, 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();
}

Результирующая строка XML содержит Country сущностей, но не содержит City сущностей.

Как мне решить эту проблему?

1 Ответ

1 голос
/ 24 января 2011

Вызов ToList(), кажется, вызвал проблему.

...