Я хочу сериализовать некоторые объекты в Json. Иногда (не всегда, и я не знаю, что его вызывает) один из этих объектов - это прокси, который заставляет сериализатор выдавать ошибку циклической ссылки, даже если нет циклической ссылки: «Циклическая ссылка была обнаружена при сериализации объект типа 'System.Reflection.RuntimeModule'. "
Мой код использует NHibernate и JavaScriptSerializer:
public static string Convert(object xiObject)
{
var lSerialiser = new JavaScriptSerializer();
return lSerialiser.Serialize(xiObject);
}
Ленивая загрузка предположительно выключена, как в:
HasManyToMany(x => x.Managers)
.Not.LazyLoad();
Звучит очень похоже на проблему этого парня:
http://markmail.org/message/x5a2k7j7qtjmj73g#query:+page:1+mid:4r5lcggmfrcq5tby+state:results
Так что я планирую использовать Json.net вместо JavaScriptSerializer и внедрить решение на этой странице, но это выглядит действительно сложно. Любые другие предложения будут хороши.