【发布时间】:2014-12-26 16:50:39
【问题描述】:
我有一个 asp.net mvc 应用程序。我有两个这样的模型类:
public class BaseViewModel
{
...
}
public class DerivedViewModel : BaseViewModel
{
...
}
我有一个视图,我想在这两个模型中都使用这个视图。
@model BaseViewModel
...
内部视图,我可以这样使用:
@if (Model.GetType() == DerivedViewModel)){
@* Properties of Derived class *@
}
我在这个视图中使用这样的表单:
@using (Html.BeginForm("Home", "Application", FormMethod.Post)) {
...
}
但是当我将表单发布到控制器方法时,我无法将基类转换为派生类。如何在控制器方法中分离派生类和基类?怎样才能正确发帖?
【问题讨论】:
-
显示你的控制器动作。
-
你最好像这样检查模型类型:
@if (Model is DerivedViewModel)
标签: asp.net-mvc inheritance view model