Здесь есть сообщение , в котором спрашивается, как решить ошибку циклической ссылки при возврате сериализованного объекта через 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, но после этого я в тупике. Спасибо.