Ich habe eine BarEditor.ascx, die von verschiedenen Stellen aus aufgerufen werden kann.
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<MyApp.Models.Bar>" %>
<%= Html.TextBox("a") %>
...
Stellen Sie sich nun vor, dass ich zwei Objekte auf einer Seite bearbeiten muss 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>
Dieser legt vor:
a=1&a=2
Ich muss es sein:
bar.a=1&baz.a=2
Wir können es also mit
public ActionResult Update(Bar bar, Bar baz)
{
...
}
Was ist ein bester Weg, um wiederverwendbare BarEditor.ascx zu schreiben, die Präfixe für Steuerelemente Namen generieren kann?