Эта проблема возникает по сети в течение многих лет, я пока не нашел хорошего решения. Тема проходит список объектов, которые имеют циклическую ссылку внутри них населена NHibernate (с или без ленивых нагрузки - некоторые сайты не ВОФК может быть сделано с ленивым)Циркулярная ссылка, NHibernate и WCF
Вот пример:
[DataContract]
class Person
{
[DataMemeber]
string Name
[DateMember]
IList<Child> myChilds;
}
[DataContract]
class Child
{
[DataMemeber]
string Name
[DateMember]
Person Father
}
Когда я пытаюсь получить все лица в моей БД: Серверный код будет:
ICriteria crit = session.CreateCriteria(typeof(Person)));
IList<Base> queryResult = crit.List<Base>();
Я получаю хорошие результаты на серверном побочные список всех человека, так и внутри каждого человека, Я получаю Список всех сыновей (и внутри каждого сына - я получаю объект Лица, у которого внутри есть список его сыновей и т. д.)
Теперь, пытаясь получить этот список по WCF, вызывается канал. (если я удалю объект Person из ребенка - он отлично работает).
Решения Я пробовал и не решил эту проблему: Добавление IsReference = true в [DataContract] - не помогло. Перемещение всего отображения на not.Lazyload() - не помогло.
Любые идеи, как решить эту проблему без перезаписи WCF?
Спасибо, Дани
Ссылка была нарушена на данный момент. – Restuta
Ссылка по-прежнему отсутствует - 404. – ssmith