Я хотел бы знать, как правильно расположить объекты в следующей ситуации. Это действие контроллера ASP.NET MVC. Есть репозиторий, который реализует IDisposable. Объект вложения содержит связанный объект Task. Когда я нажимаю на детали вложения, они отображаются правильно. Но когда я нажимаю на задачу, появляется следующее исключение «Экземпляр ObjectContext был удален ...». Я понимаю, что когда представление отображается, оно удаляется, а ObjectContext закрывается.
public ActionResult Detail(Guid id)
{
Attachment attachment = null;
using (var attachmentRepository = IoC.Resolve<AttachmentRepository>())
{
attachment = attachmentRepository.SelectByKey(id);
return View("Detail", attachment);
}
}
Мой вопрос: что является лучшей практикой в этом сценарии?
Это хорошее решение? Когда ObjectContext будет расположен в этой ситуации? Когда пользователь перейдет в другой вид? Или когда будет запущен сборщик мусора?
public ActionResult Detail(Guid id)
{
Attachment attachment = null;
var attachmentRepository = IoC.Resolve<AttachmentRepository>();
attachment = attachmentRepository.SelectByKey(id);
return View("Detail", attachment);
}
спасибо