我有一个使用三层架构的 ASP.net (C#) 项目。我开始在我的 DAL 中使用 Entity Framework ,问题是 Entity Framework 生成的类在多大程度上可以在业务逻辑层中使用?
直接使用它们是个好主意,还是我应该创建自己的业务对象并从 Entity Framework (db->O/RM->BOs)映射到它们?
最佳答案
在我看来,EF 对象将映射到您的对象。这具有更高的开发成本,但会带来持久性无知和解耦的额外好处。如果业务需要切换到不同的持久性解决方案,从长远来看,这种解耦可以转化为显着的敏捷性和现实世界的节省。如果没有解耦,EF 对象可能会深深嵌入 BLL 甚至表示层中,需要进行大量重构。在这种情况下,企业甚至可能不会考虑更换持久化解决方案,这可能会导致企业竞争力下降。
以更高的开发成本获得此 yield 的决定取决于企业愿意承担的风险大小。我建议您咨询项目专员,并根据您的最佳判断从技术角度解读他们的战略目标。
关于c# - 在业务逻辑层使用 Entity Framework 生成的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1799661/