再会,
我需要验证以下设计是否有意义:
DAL [EF 5 DbContext] => 实体
实体 [持有 EF 实体的单独程序集。]
服务 [我想做的事情,比如 CRUD 等] => DAL 和 =>Entities =>IServices
ISerivces [服务接口]
IoC [我的具有 Unity 容器和静态构造函数的依赖工厂] => IServices,服务。(基本上它将接口与它们的实现联系起来)
UI => IoC、IServices(以及临时实体和 EF,因为我将在我的服务中使用 DTO,因此无需引用 EF)。
没有 BAL 或 BLL - 我试图将尽可能多的逻辑放入我的实体中(通过部分类添加执行 BL 的属性和方法)。当这绝对不可能时,一些 BL 会投入使用(尽管尽可能少......)。
这是我使用 DI 的方式:
private void button1_Click(object sender, RoutedEventArgs e)
{
var svc = DependencyFactory.Resolve<IMyService>();
var l = svc.GetProjects();
}
请,如果您对这个设计是否有意义有任何意见。可扩展性/性能的潜在问题?
此外,这看起来类似于组合根模式,只是它表示不应在任何地方引用您的 IoC。如果它不应该被引用,你如何使用它?
谢谢,