Я работаю в автономном сценарии, но заметил, что удаление контекста объекта не освобождает присоединенные объекты. В результате последующие операции часто не выполняются из-за этого.
Итак, чтобы решить эту проблему, я отключаю все сам, когда контекст объекта располагается:
public void Dispose()
{
// detaching is not really needed, because we have short living object contexts
var objectStateEntries =
_context.UnderlyingContext.ObjectStateManager.GetObjectStateEntries(EntityState.Unchanged);
objectStateEntries.ToList().ForEach(o => { if (o.Entity != null)
{
_context.UnderlyingContext.Detach(o.Entity);
}});
_context.Dispose();
_context = null;
}
Тем не менее, побочным эффектом является то, что граф объектов полностью отключается, но я действительно хочу сохранить график!
Кажется, я не могу найти решение для этого, правда ли, что это не может быть сделано?