【问题标题】:MVC architeture with EF Code FirstEF Code First 的 MVC 架构
【发布时间】:2014-07-23 14:24:23
【问题描述】:

我试图了解如何分离模型类/MVC 以与 EF CodeFirst 中的数据库设计进行交互。

例如,考虑一下这个简单的架构:

我的应用程序:

1. WEB 
2. DATABASE 
3. ModelEntity

问题是:

谁应该在WEB UI中不显示表调用数据库?

ModelEntity 还是模型/MVC?

这种情况下是否需要使用mapper?

【问题讨论】:

    标签: c# asp.net-mvc entity-framework design-patterns architecture


    【解决方案1】:

    您的控制器将成为您在 web ui 和模型之间的中间人,模型代表数据库中的表。

    通常,您的 Web UI 将使用 ViewModles,这可能与您的 ModelEntity 不一致,这时AutoMapper 之类的工具就非常有用了。

    【讨论】:

      【解决方案2】:

      这就是我通常将我的分开的方式:

      1) 数据层:实体模型、EF 映射器、EF 上下文

      2) 领域层:领域模型、实体到领域模型映射器、查询对象、查询处理程序、命令对象、命令处理程序、服务

      3) 应用层:视图模型、域到视图模型映射器、应用程序外观

      4) UI 层:控制器、Razor 视图,可能还有其他一些不适合应用层的视图模型

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-09-25
        • 2013-10-11
        • 2011-10-26
        • 1970-01-01
        • 1970-01-01
        • 2017-07-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多