В настоящее время я создаю админ-сервер для веб-сайта в ASP.NET MVC.
В приложении ASP.NET MVC я начал использовать вспомогательный метод "EditorFor":
<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>
В модели поле "Биография" было украшено: [UIHelper ( "Html" )].
У меня есть частичный вид "Html" (в разделе Views/Shared/EditorTemplates):
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.XML.Linq.XElement>" %>
<textarea class="html">
<%= Model.ToString() %>
</textarea>
Теперь я хотел бы, чтобы атрибут 'ID' в 'textarea' был установлен на имя поля, например:
<textarea id="Biography" class="html">
...
</textarea>
Но я не вижу способа сделать это с текущей настройкой.
Все, что я могу придумать, это создать "Html" ViewModel, который содержит свойство "Значение" и свойство "ControlID".
Но если бы я основал представление, а не "System.XML.Linq.XElement", он больше не был бы совместим с вспомогательным методом "EditorFor", и мне пришлось бы делать все вручную.
У кого-нибудь была аналогичная проблема?