4

我需要使用实体框架编写数据访问层。要求之一是允许配置文件控制数据的来源。使用一个配置设置,它应该来自数据库;另一个,来自网络服务。

现在,我最初的想法是拥有 3 个 DataAccess 类:

  • 小部件数据访问
  • WidgetDatabaseDataAccess
  • WidgetWebServiceDataAccess

它们都将实现相同的接口。WidgetDataAccess 将读取配置并委托给正确的子类。这似乎很明智,对吧?

有什么我应该遵循的模式,或者有更好的方式来构建它的人吗?

4

1 回答 1

1

Yes, Repository / UnitOfWork pattern.

  • Widget.Core : Your MVC application using only Widget.DAL namespace, dependency injected with either Widget.DAL.DatabaseService or Widget.DAL.WebService based on your config file
  • Widget.DAL : IRepository, IUnitOfWork, IWhateverYouNeed, DTOs
  • Widget.DAL.DatabaseService : Entity Framework Models and Context. Implementation of Widget.DAL interfaces using your Entity Framework context
  • Widget.DAL.WebService : Web client, Domain objects, implementations of Widget.DAL interfaces using your Web client
于 2012-10-24T17:20:44.603 回答