【发布时间】:2010-01-12 11:19:24
【问题描述】:
如果您在 ASP.NET MVC 视图的顶部看到:
<% var dto = (MyDto)Model; %>
...有什么问题吗?我感觉不太对劲……
【问题讨论】:
标签: asp.net-mvc dto
如果您在 ASP.NET MVC 视图的顶部看到:
<% var dto = (MyDto)Model; %>
...有什么问题吗?我感觉不太对劲……
【问题讨论】:
标签: asp.net-mvc dto
对于强类型视图,您不需要以这种方式强制转换类型。如果视图继承自 ViewPage<MyDto>,则 Model 属性将是 MyDto 类型。
如果视图不是强类型,则 Model 属性的类型为 object,因此您需要对其进行强制转换。
在这种情况下使用强类型视图是有意义的
【讨论】:
问题是:存储DTO对象作为View的模型好不好? 我的回答是:视情况而定。 DTO 应该只有一种行为:存储数据。因此,当您使用 DTO 对象仅在 View 上显示它时:就可以了。
View Model 旨在存储更多包含多种行为的编译对象,但存储 DTO 并没有错。
【讨论】: