Свойство модели MVC передано как ноль
У меня есть строго типизированные представления, где я передаю редакторы для нескольких свойств, например.
public class BookingModel
{
public FirstPropertyModel FirstProperty { get; set; }
public SecondPropertyModel SecondProperty { get; set; }
public ThirdPropertyModel ThirdProperty { get; set; }
}
@model MyWebsite.Models.BookingModel
@using (Html.BeginForm("Order", "Booking", FormMethod.Post, new { @id = "order_summary" }))
{
@Html.EditorFor(model => model.FirstProperty, "_FirstProperty")
@Html.EditorFor(model => model.SecondProperty, "_SecondProperty")
@Html.EditorFor(model => model.ThirdProperty, "_ThirdProperty")
<input type="submit" id="btnOrder" value="Order" />
}
Все объекты свойств передаются действию, но одно свойство (First) имеет значение null.
Все они находятся в EditorTemplates, и их представления также строго типизированы - используйте свои собственные модели.
Любая идея, почему это происходит?
2 ответа
Я бы попробовал инициализировать / создать экземпляр свойств BookingModel в конструкторе, чтобы посмотреть, поможет ли это
public class BookingModel
{
public BookingModel()
{
FirstProperty = new FirstPropertyModel();
SecondProperty = new SecondPropertyModel();
ThirdProperty = new ThirdPropertyModel();
}
public FirstPropertyModel FirstProperty { get; set; }
public SecondPropertyModel SecondProperty { get; set; }
public ThirdPropertyModel ThirdProperty { get; set; }
}
У меня была проблема с отображением некоторых свойств модели в представлении свойств, поэтому после исправления свойства проблема с нулем была исправлена. Спасибо за ответы