MVC UpdateModel, gdy nazwy się nie zgadzają

Powiedzmy, że masz model, który wygląda tak:

public class MyClass {
    public string Name { get; set; }
    public DateTime MyDate { get; set; }
}

Domyślny szablon edycji, który udostępnia Visual Studio, to zwykłe pole tekstowe dlaMyDate własność. Wszystko jest w porządku, ale powiedzmy, że musisz podzielić to na komponenty Miesiąc / Dzień / Rok, a Twój formularz wygląda tak:

<label for="MyDate">Date:</label>
<%= Html.TextBox("MyDate-Month", Model.MyDate.Month) %>
<%= Html.TextBox("MyDate-Day", Model.MyDate.Day) %>
<%= Html.TextBox("MyDate-Year", Model.MyDate.Year) %>

Po przesłaniu wywołanie doUpdateModel&nbsp;nie zadziała, ponieważ nie ma definicjiMyDate-Month. Czy istnieje sposób na dodanie niestandardowego spoiwa do projektu, aby obsłużyć takie sytuacje lub czy wejścia HTML są nazywane inaczej (z jakichkolwiek powodów)?

Jedno obejście, które znalazłem, to użycie JavaScript do wstrzyknięcia ukrytego wejścia do formularza przed przesłaniem, który łączy pola i jest odpowiednio nazwany, ale to jest złe.