У меня есть модель EF, в которой для ленивой загрузки установлено значение true. Я делаю этот запрос:
public static WorkflowStatus Get(int id)
{
WorkflowStatus status;
using (var db = new WorkflowDb())
{
status = db.WorkflowStatuses
.Include("CurrentMappings")
.Include("CurrentMappings.NextWorkflowStatus")
.Include("NextMappings")
.Include("NextMappings.CurrentWorkflowStatus")
.Include("WorkQueueWorkflowStatusMaps")
.Include("WorkQueueWorkflowStatusMaps.WorkQueue")
.FirstOrDefault(x => x.Id == id);
}
return status;
}
После того, как я вернул статус, населяют не только эти вещи. Например, каждый WorkQueueWorkflowStatusMap имеет WorkQueue, а WorkQueue имеет коллекцию WorkQueueWorkflowStatusMaps - поэтому загружается бесконечное количество возвратно-поступательных данных. Как мне заставить это остановиться? Когда я возвращаю это через службу WCF на другом уровне, из-за этого возникает исключение.