【问题标题】:Asp.Net MVC - Mapping Data Objects to View ModelAsp.Net MVC - 将数据对象映射到视图模型
【发布时间】:2009-11-11 18:41:12
【问题描述】:

我们当前的 MVC 项目设置为具有封装存储库中的数据并将其传递给视图的 ViewModel。

在进行从数据对象到视图模型的映射(在控制器中)时,实现此目的的最佳方法是什么?

我见过 AutoMapper (http://www.codeplex.com/AutoMapper),但想知道是否有现成的解决方案?

【问题讨论】:

    标签: asp.net-mvc


    【解决方案1】:

    AutoMapper 似乎是(被许多人)接受的解决方案。

    我会说,在 MVC 世界中没有“开箱即用”的解决方案 - 例如,与 Ruby on Rails 不同。框架是高度可扩展的,但同时又非常薄,所以在很多领域你必须发明你自己的“自以为是”的做事方式。只是你的情况的一个例子,我个人有我的视图模型:

    • 声明静态 ConfigureAutoMapper()
    • 具有可选的 Setup(realmodel) 方法或可选的构造函数
    • ViewModel(destinationViewModelType) 用于操作,它会自动执行转换 - 创建视图模型、调用 Setup 或 Constructor,或调用 AutoMapper
    • ViewModel 映射是使用预定义的 ConstructUsing 创建的,该 ConstructUsing 使用 IoC 容器进行实例化,以便视图模型在需要时获取其 IoC 依赖项

    开箱即用的 MVC 中不存在以上所有内容。我想说 MVC 只支持“开箱即用”的类似 ViewData 的用法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-03
      • 1970-01-01
      相关资源
      最近更新 更多