Asp.net mvc 一个用于查看的模型(viewmodel)和一个用于表单的模型

Asp.net mvc 一个用于查看的模型(viewmodel)和一个用于表单的模型,asp.net-mvc,forms,viewmodel,Asp.net Mvc,Forms,Viewmodel,在我的应用程序中进行一些更改以使用viewmodels而不是域模型时。我想出了这个问题。创建新项目时,有些字段未使用例如:CreatedDate。。。但我在查看项目列表或项目详细信息时需要它们 我看过一些教程,其中他们在前端使用viewmodels处理所有内容 因此,如果我只公开创建项所需的字段,而有用于查看的模型和用于后端操作的域模型,那么为表单再提供一个模型是否是一个好的做法?或者有更好的方法解决这个问题吗?您可以只公开域模型来将数据从逻辑抽象传输到视图抽象,而不使用视图模型视图模型支持(1

在我的应用程序中进行一些更改以使用viewmodels而不是域模型时。我想出了这个问题。创建新项目时,有些字段未使用例如:CreatedDate。。。但我在查看项目列表或项目详细信息时需要它们

我看过一些教程,其中他们在前端使用viewmodels处理所有内容


因此,如果我只公开创建项所需的字段,而有用于查看的模型和用于后端操作的域模型,那么为表单再提供一个模型是否是一个好的做法?或者有更好的方法解决这个问题吗?

您可以只公开域模型来将数据从逻辑抽象传输到视图抽象,而不使用视图模型

视图模型支持(1)视图。对不同视图的重用是一种奖励,但不是目标。您可以在这里使用继承来创建一系列相关VM。或者使用组合,转发模型属性。