【问题标题】:Looking for a pattern to help map DTOs to EF4 entities in Business Logic Layer寻找一种模式来帮助将 DTO 映射到业务逻辑层中的 EF4 实体
【发布时间】:2011-08-19 21:02:07
【问题描述】:

我有一个使用纯 DTO 的 WCF 服务层。

在服务器端,我将这些 DTO 传递给我的业务逻辑层,基本上是为每个实体或实体组设置一组“管理器”类。

Manager 类方法将 DTO 作为参数,在每个方法的第一行中,我使用 DTO 并使用 AutoMapper,将其映射到我的实体框架 POCO。然后我执行我的 LinQ 查询或存储库方法(我使用的是 EF 4.1 中的 DBContext),如果需要,将结果实体映射回 DTO 并将其返回给 WCF 服务方法。

几乎我的 Manager 类中的每个方法都在进行这种映射和重新映射,这是大量重复的样板代码。关于我可以用来减少冗余的模式有什么建议吗?

【问题讨论】:

  • 请提供一些代码示例

标签: .net entity-framework design-patterns automapper dto


【解决方案1】:

我们将所有映射放在一个单独的 dll 中。它使测试更容易,并且无需重复代码。

您还可以使用 automapper 进一步减少代码量,请参阅:http://automapper.codeplex.com/

【讨论】:

    【解决方案2】:

    您不需要模式 - 您只需将重复代码包装在帮助方法中并重用该方法。

    【讨论】:

      【解决方案3】:

      如果你想在 WCF 架构中使用实体框架。我认为最好的选择是 POCO Self-Tracking Entities,它以 Visual Studio 项目模板的形式提供,可以从 Designer 中创建。

      MSDN : Working with Self-Tracking Entities

      【讨论】:

        猜你喜欢
        • 2012-12-23
        • 1970-01-01
        • 2010-12-22
        • 2018-11-01
        • 2012-03-08
        • 1970-01-01
        • 2018-09-13
        • 2017-09-17
        相关资源
        最近更新 更多