Model,ViewModel和DTO有什么区别?

时间:2013-11-13 08:29:14

标签: asp.net-mvc model-view-controller

我是ASP.NET MVC开发人员,我很困惑。 Model,ViewModel和DTO(数据传输对象)之间有什么区别?模型是否可以将方法保存到数据库中?

1 个答案:

答案 0 :(得分:9)

DTO是在层之间进行通信时传递数据的对象。这是一种与ASP.NET MVC无关的通用模式。

ViewModel包含特定于特定视图的数据,在控制器中传递给该视图,并在视图中用于渲染。这是ASP.NET MVC特有的模式(不要与MVVM中的ViewModel混淆 - 它们是不同的)

模型是一组代表您的业务领域的对象。它可以包含将其保存到DB的方法,具体取决于您将选择构建它的模式(在您的情况下类似于Active Record)。