我们一直在密切关注使用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),会发生什么。
答案 0 :(得分:3)
感谢您在此发帖,因为我相信其他人会问这个:)
如果您不使用EF,那么您就赢了;获得Breeze提供的自动元数据创建。你当然可以将EF上下文抽象为Repo,但仍然可以获得好处。
Breeze / Knockout ASP.NET SPA模板显示已分发的存储库。我相信在某个地方有一个UoW的样本 - 它逃离了我在哪里。我已经让Breeze的人们指出了答案。
如果您使用nHibernate,则没有自动元数据 - 但这是我可以在Breeze看到的一个很棒的功能请求。