我在我的应用程序中使用 ADO.NET Entity Framework 作为数据访问层,但我不确定应该将业务逻辑放在哪里。是否有任何可用的最佳实践或示例来说明如何将业务逻辑与 Entity Framework 实体集成?
编辑后:
我想要在 BLL 中执行计算、安全性、规则和其他内容的任何示例......任何文章和示例..!
我在我的应用程序中使用 ADO.NET Entity Framework 作为数据访问层,但我不确定应该将业务逻辑放在哪里。是否有任何可用的最佳实践或示例来说明如何将业务逻辑与 Entity Framework 实体集成?
编辑后:
我想要在 BLL 中执行计算、安全性、规则和其他内容的任何示例......任何文章和示例..!
您应该有一个业务层(一个单独的项目引用您的数据访问层,或者至少是您的业务对象所在的某种目录)。这些业务对象应该是直接与您的 DAL 对话的业务对象。换句话说,不要在 DAL 上实现业务逻辑,因为它不属于那里。
我相信你以前看过这张图:
我不会将您的业务逻辑/规则放在实体框架中 - 它用作数据访问层。我将创建一个单独的业务逻辑项目(类库),它可以调用您的数据访问层来获取/设置数据并在此过程中强制执行业务规则,这样您就可以在数据访问层发生变化时重用规则。
您可以将实体用作业务对象。实现业务逻辑msdn 库文章解释了如何做到这一点。如果您点击链接,您会发现在属性更改和保存更改期间适合业务逻辑的代码示例。
请记住,您可以使用具有自定义业务逻辑的部分类来扩展 EF。:
“ADO.NET 实体框架包含一个工具,给定 EDM 架构,它将生成代表 .NET 环境中 EDM 实体的 .NET 类。生成的类是部分类,因此可以使用自定义业务逻辑对其进行扩展在单独的文件中,而不会干扰代码生成器。”
自定义对象msdn 文章也涵盖了这个主题。