我正在搞乱EF4.1。我想保持我的域名和DAL分开。我的域包含基本实体类和存储库的接口。 DAL包含这些存储库的实现。
我的问题是我必须编辑我的域以使用EF。例如,具有“地址”的“人”现在具有“AddressId”和“虚拟地址”。我现在还在我的域层中保留注释。我对此不太满意,因为这意味着我正在改变我的应用程序的核心以使用EF。我也介绍了不相关的数据,因为Address不需要在我的应用程序的上下文中有ID;只在数据库中。如果明天我写了一个新的DAL层来从Web服务或XML文件中获取我的对象怎么办?
有解决方法吗?我在考虑将EF实体保留在DAL层并将它们映射到存储库中的域类,但这不是一个巨大的性能损失吗?