Objectcontext и Foreignkey-отношения в многоуровневом веб-приложении - PullRequest
0 голосов
/ 05 октября 2010

Я создаю веб-приложение, используя Entity Framework 4. Насколько я могу судить по обширному поиску в Google, лучше всего создавать и уничтожать объектный текст, когда он используется, и не позволять ему жить слишком долго.Итак, в моем уровне данных я делаю что-то вроде:

, используя (var context = new MyDAO ()) {МОЙ КОД}, создавая и убивая контекст сразу.

Одна из вещей, которые яПримером сущности фреймворка является возможность работать со связанными объектами непосредственно в вашем коде (например, Account.Employees).Проблема в том, что, когда я пытаюсь сделать это в моем уровне представления, он выдает исключение, так как контекст больше не доступен, поэтому он не может выбрать сотрудников для учетной записи.Я попытался включить отложенную загрузку контекста в моем уровне данных, но, похоже, это не сработало.

Итак, мои вопросы: как мне загрузить отношения (ленивые) на разных уровнях?

Спасибо, Томас

1 Ответ

0 голосов
/ 05 октября 2010

Вы должны загрузить все, что вам нужно, прежде чем закрывать контекст.

Это проектное решение в EF. Что любая загрузка объектов должна контролироваться, а не происходить косвенно. Это обычно дает более масштабируемое решение.

редактировать

Спасибо за комментарий.

Эти настройки находятся в контексте. Таким образом, вы все еще должны иметь открытый контекст. Один из способов сделать это - открыть контекст на верхнем уровне и отправить его в качестве параметра.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...