Rendern des Feldnamens in einer EditorTemplate (gerendert über EditorFor ())

Momentan erstelle ich das Admin-Back-End für eine Website in ASP.NET MVC.

In einer ASP.NET MVC-Anwendung habe ich damit begonnen, die Hilfsmethode 'EditorFor' wie folgt zu verwenden:

<div id="content-edit" class="data-form">
    <p>
        <%= Html.LabelFor(c => c.Title) %>
        <%= Html.TextBoxFor(c => c.Title)%>
    </p>
    <p>
        <%= Html.LabelFor(c => c.Biography) %>
        <%= Html.EditorFor(c => c. Biography)%>
    </p>
</div>

Im Modell wurde das Feld 'Biografie' mit [UIHelper ("Html")] verziert.

Ich habe eine 'Html'-Teilansicht (unter Views / Shared / EditorTemplates):

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.XML.Linq.XElement>" %>

<textarea class="html">
    <%= Model.ToString() %>
</textarea>

Jetzt möchte ich das 'ID'-Attribut des' Textbereichs 'auf den Namen des Feldes setzen, wie folgt:

<textarea id="Biography" class="html">
    ...
</textarea>

Aber ich kann keinen Weg finden, das mit dem aktuellen Setup zu tun.

Ich kann mir nur vorstellen, ein 'Html'-ViewModel zu erstellen, das eine' Value'-Eigenschaft und eine 'ControlID'-Eigenschaft enthält.

Aber wenn ich die Ansicht darauf stützen würde und nicht auf 'System.XML.Linq.XElement', wäre sie nicht mehr mit der Hilfsmethode 'EditorFor' kompatibel, und ich müsste alles manuell erledigen.

Hat jemand schon ein ähnliches Problem gehabt?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage