使用实体框架进行n层应用程序开发的最佳实践方法是什么?

时间:2010-05-21 12:27:23

标签: entity-framework

我正在使用实体框架构建应用程序。我正在使用T4模板生成自我跟踪实体。

目前,我正在考虑在单独的项目中创建实体框架代码。在同一个项目中,我会为实体提供其他方法的部分类。

我正在考虑使用上层/表示层的方法为服务层(WCF)创建一个单独的项目。 WCF层将引用实体框架项目。 WCF层中的方法将返回实体或接受实体作为参数。

我想为表示层(ASP.net)创建第三个项目,这将调用WCF服务,但也需要引用实体,因为WCF方法将这些类型作为参数/返回类型

简而言之,我希望将T4模板生成的STE实体用作DTO,以便在所有层中使用。

我原本打算创建一个映射到每个实体的业务逻辑层。示例:如果我有客户类,则业务层将具有CustomerBLL类,然后customerBLL中的方法将由服务层使用。我还试图在这个业务层创建一个DTO。然而,我发现这种方法非常耗时,并且我没有看到一个主要的好处,因为它会创造更多的维护工作。

使用实体框架4进行n层应用程序开发的最佳实践是什么?

1 个答案:

答案 0 :(得分:0)

您应该将实体及其持久性逻辑分离为单独的项目。这样你的表示层只需要引用包含实体的项目并且是持久性无知的。

我认为项目细分如下,这将是一个很好的方法(至少它对我来说效果很好:))

  • 一个项目中的实体
  • 另一个项目中的持久性逻辑(存储库,工作单元) 实施)
  • 一个项目中的WCF
  • 表示层

希望它有所帮助。