Время жизни контекстного объекта EntityFramework для служб WCF - PullRequest
1 голос
/ 09 августа 2011

У меня есть одна Служба WCF, которая будет обрабатывать вставку, обновление и удаление (не чтение) для моих сущностей.

Эта служба имеет несколько моделей EF (каждая из которых сопоставляется с различными частямибаза данных).

У меня такой вопрос: стоит ли создавать ObjectContexts дорого?Могу ли я создавать новый каждый раз, когда поступает запрос на сохранение (что будет довольно часто)?

Или я должен стараться, чтобы каждый экземпляр работал дольше?И если я сделаю, кеш контекста вещи?(Я собираюсь поместить это в ситуацию с аппаратной балансировкой нагрузки.)

Если я собираюсь создавать новые ObjectContexts для каждого запроса, есть ли способ сделать это быстрее?

1 Ответ

3 голосов
/ 09 августа 2011

Создание нового контекста происходит быстро.Время жизни контекста в структуре сущности должно быть максимально коротким (единица работы).Создание экземпляра для каждого запроса является рекомендуемым способом.См. здесь .

Веб-приложения - используйте контекст для запроса.Поскольку в веб-приложениях мы имеем дело с запросами, которые очень короткие, но содержат все транзакции сервера, тогда они являются подходящей продолжительностью для контекста, в котором мы живем. Мы будем наслаждаться всей функциональностью контекста, и она не будет зависать очень долго.

...