带有存储库的breezejs

Ste*_*veB 6 repository-pattern entity-framework-5 single-page-application breeze

我们一直在密切关注使用Breezejs的SPA,以便在客户端和服务器之间提供数据上下文.这些功能在客户端看起来很棒,但是我们希望在服务器上使用Repository模式,并且可以很好地分离关注点,而不必继承EFContextProvider,这会导致IoC出现问题,并可能导致单元测试/模拟.我们一直在关注Plupaight上John Papa的Code Camper样本,该样本最初使用没有Breeze的Respository/UoW模式,然后让我们看看包含Breeze的Hot Towel模板.

有谁知道Breeze如何被抽象到一个Repository,它可以干净地保存DbContext(如果使用Entity Framework).此外,如果您不使用Entity Framework并且更喜欢使用其他ORM(如nHibernate),会发生什么.

Joh*_*apa 3

感谢您在这里发帖,因为我相信其他人会问这个:)

如果您不使用 EF,那么您将无法获得 Breeze 提供的自动元数据创建功能。不过,您当然可以将 EF 上下文抽象到 Repo 中,并且仍然可以获得好处。

Breeze/Knockout ASP.NET SPA 模板显示已分解的存储库。我相信在某个地方有 UoW 的样本 - 尽管我不知道它在哪里。我已经请 Breeze 的人指出这个问题的答案。

如果您使用 nHibernate,则没有自动元数据 - 然而,这是我对 Breeze 的一个很好的功能请求。