Как я решил ошибку циклической ссылки Json при сериализации?

Здесь есть сообщение , в котором спрашивается, как решить ошибку циклической ссылки при возврате сериализованного объекта через EF4 CTP5. Некоторое время назад я столкнулся с той же проблемой с проектом веб-форм WCF.

Мне удалось «решить» эту проблему в моем проекте веб-форм WCF и в моем проекте MVC3. Я не думаю, что имеет значение, какой тип проекта, так как это похоже на "штуку" EF-сериализации.

Я решил проблему, отключив ProxyCreation в моем конструкторе ObjectContext следующим образом:

public class MyObjectContext : DbContext, IDbContext
{
     public MyObjectContext(string connectionStringName) : base(connectionStringName)
     {
        ((IObjectContextAdapter)this).ObjectContext.ContextOptions.ProxyCreationEnabled = false;
     }
     public DbSet Products {get;set;}
     //etc.
} 

Мой вопрос: Может ли кто-нибудь объяснить почему это, казалось бы, решило бы проблему?

Я думаю, что проблема связана с навигационными свойствами в моих POCO, но после этого я в тупике. Спасибо.

12
задан Community 23 May 2017 в 10:27
поделиться