В моем примере приложения MVC 3 есть 2 модели SimpleModel
и ComplexModel
, показанные ниже:
public class SimpleModel
{
public string Status { get; set; }
}
public class ComplexModel
{
public ComplexModel()
{
Simple = new SimpleModel();
}
public SimpleModel Simple{ get; set; }
}
Я определил виды для этих моделей:
_SimplePartial.cshtml
:
@model SimpleModel
@Html.LabelFor(model => model.Status)
@Html.EditorFor(model => model.Status)
и Complex.cshtml
:
@model ComplexModel
@using (Html.BeginForm()) {
@Html.Partial("_SimplePartial", Model.Simple)
<input type="submit" value="Save" />
}
После отправки формы со случайным значением, введенным в поле Status
, значение не привязывается к моей модели.Поле Status
равно NULL
, когда я проверяю модель в действии моего контроллера:
[HttpPost]
public ActionResult Complex(ComplexModel model)
{
// model.Simple.Status is NULL, why ?
}
Почему это не связано?Я не хочу наследовать модели.Должен ли я написать свои пользовательские связующие модели для такого простого случая?
С уважением.