Частичное представление с параметризованным префиксом для имен элементов управления

У меня есть BarEditor.ascx, который можно вызвать из разных мест.

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<MyApp.Models.Bar>" %>
<%= Html.TextBox("a") %>
...

Теперь рассмотрим, мне нужно отредактировать два объекта на одной странице. Edit.aspx

    <form action="update">
        <div>
            <% Html.RenderPartial("BarEditor", ViewData["bar"]); %>
        </div>
        <div>
            <% Html.RenderPartial("BarEditor", ViewData["baz"]); %>
        </div>

        <input type="submit" value="Submit" />
    </form>

Это представляет:

a=1&a=2

Мне нужно, чтобы это было:

bar.a=1&baz.a=2

Таким образом, мы можем обработать это с

public ActionResult Update(Bar bar, Bar baz)
{
    ...
}

Каков наилучший способ написать повторно используемый BarEditor.ascx, который может генерировать префиксы для имен элементов управления?

Ответы на вопрос(4)

Ваш ответ на вопрос