【发布时间】:2011-03-23 09:33:23
【问题描述】:
我正在试验 ASP.NET MVC2,尤其是视图模型和局部视图。我的问题是:如果视图使用局部,让你的局部强类型化接口并且让你的视图模型实现该接口是“有效的”还是“正确的”?
为了说明,假设我有一个 Product 表单部分(针对 IProductFormViewModel 进行强类型化),它在 Edit 和 Create 视图中都使用。这些视图是针对实现 IProductFormViewModel 的 ProductEditViewModel 和 ProductCreateViewModel 进行强类型化的。
好处是 Create 和 Edit 的相应 POST 操作分别采用 ProductCreateViewModel 和 ProductEditViewModel 对象。
编辑: 如果部分有自己的专用视图模型 (ProductFormViewModel) 并且每个 ProductEditViewModel 和 ProductCreateViewModel 都公开一个传递给部分的 ProductFormViewModel 类型的属性,那么当提交表单时,ProductEditViewModel 和 ProductCreateViewModel 的模型绑定不起作用编辑和创建操作需要各自的对象类型……这就是采用这种方法的原因。
【问题讨论】:
标签: asp.net asp.net-mvc-2 viewmodel partials