В настоящее время я создаю серверную часть администратора для веб-сайта в 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 id="Biography" class="html">
...
</textarea>
Но я не вижу способа сделать это с текущими настройками.
Все, о чем я могу думать, - это создать модель представления «Html», которая содержит свойство «Значение» и свойство «ControlID».
Но если бы я основывал свое мнение на этом, а не на «System.XML.Linq.XElement», он больше не был бы совместим со вспомогательным методом «EditorFor», и мне пришлось бы делать все вручную.
У кого-нибудь уже была подобная проблема?