Используя этот образец проекта в качестве руководства, я настраиваю новый проект. Мой проект будет следовать той же базовой архитектуре, только в дополнение к проекту mvc, у меня также будет проект веб-службы wcf (или, возможно, servicestack.net)
Вместо использования Unity для DI, как в примере, я использую Ninject. В настоящее время я настраиваю Ninject следующим образом, чтобы создать только один экземпляр фабрики базы данных для каждого веб-запроса (и, таким образом, один класс datacontext для каждого запроса (используя сначала код EF 4.1, кстати))
kernel.Bind()
.To()
.InScope(ctx => HttpContext.Current);
Мне любопытно, достаточно ли этого метода? Или было бы лучше позволить фабричному классу обрабатывать создание экземпляра контекста данных для каждого HTTP-запроса (и, возможно, для каждого потока, если бы я проектировал не веб-интерфейс в будущем)? Если да, то есть ли какие-нибудь примеры того, как это сделать?
Или есть лучшее решение, чтобы справиться с этим?