атрибут привязки включает и исключает свойство с вложенными объектами сложного типа

Хорошо, это странно. Я не могу использовать свойства BindAttribute Include и Exclude с вложенными объектами сложного типа в ASP.NET MVC.

Вот что я сделал:

Модель:

public class FooViewModel {

    public Enquiry Enquiry { get; set; }
}

public class Enquiry {

    public int EnquiryId { get; set; }
    public string Latitude { get; set; }
}

Действие HTTP POST:

[ActionName("Foo"), HttpPost]
public ActionResult Foo_post(
    [Bind(Include = "Enquiry.EnquiryId")]
    FooViewModel foo) {

    return View(foo);
}

Просмотр:

@using (Html.BeginForm()) {

    @Html.TextBoxFor(m => m.Enquiry.EnquiryId)
    @Html.TextBoxFor(m => m.Enquiry.Latitude)

    
}

Не работает вообще. Могу я выполнить эту работу, только если я определю BindAttribute для класса Inquiry , как указано здесь:

Как использовать атрибут [Bind (Include = "")] на сложных вложенных объектах?

11
задан Trevor Reid 6 September 2019 в 21:18
поделиться