Мы внимательно изучаем SPA, используя Breezejs для предоставления контекста данных между клиентом и сервером. Эти функции отлично смотрятся на клиенте, но мы хотим использовать шаблон хранилища на сервере и получить хорошее разделение проблем, не наследуя от EFContextProvider, что может вызвать проблемы с IoC и, возможно, модульное тестирование/издевательство. Мы следили за образцом кода Кэмпера Джона Папы на Pluralsight, который изначально излагался с использованием шаблона Respository/UoW без Breeze, который затем заставил нас взглянуть на шаблон Hot Towel, который включает Breeze.breezejs с репозиторием
Кто-нибудь знает, как Бриз можно абстрагировать в репозиторий, который хранит DbContext в чистоте (если используется Entity Framework) инкапсулирован. Кроме того, что произойдет, если вы не используете Entity Framework и предпочитаете использовать другой ORM, такой как nHibernate.
Хороший ответ, Джон. Мы работаем над тем, чтобы упростить создание метаданных на сервере для * любой * CLR-модели. Должна описать его очень скоро ... как через неделю или две. – Ward
Я добавил простой пример «UoW/Репозиторий и модель в отдельном проекте» к моему отставанию. Чтобы быстро его получить, он будет использовать EF ... потому что основное внимание уделяется разделению проблем, а не технологии доступа к данным как таковой. Читатель должен иметь возможность менять EF по желанию, как только мы продемонстрируем (в другом месте), как создавать метаданные для любой модели. – Ward
Я очень рекомендую видео Скотта Аллена в репозитории и UOW в [Pluralsight Design Patterns course] (http: // multiplealsight. com/training/courses/TableOfContents? courseName = patterns-library) ... возможно, самое ясное, не жаргонное изложение этих шаблонов, которые я когда-либо видел. – Ward