Расширение шаблонов редактора Asp.net MVC 3

У меня есть модель, которая содержит свойство для URL изображения:

[Required]
[DataType(DataType.ImageUrl)]
public string Logo { get; set; }

Как видите, тип данных - ImageUrl, и я использовал этот факт для создания шаблона редактора в каталоге Views/Shared.

Шаблон должен только расширить шаблон по умолчанию, добавив несколько дополнительных элементов HTML. Я не уверен, как это сделать.

Я пытался указать имя шаблона, когда я вызываю html-помощников, но мне кажется, что это не работает.

Я использую код (обратите внимание, что это внутри пользовательского шаблона):

@Html.EditorFor(model => model, "string")

Если вам интересно, я получил имя шаблона с помощью отражателя на MVC 3 DLL, а затем под

System.Web.Mvc.Html

Я посмотрел на конструктор для класса TemplateHelpers и увидел следующую строку:

dictionary3.Add(typeof(string).Name, new Func<HtmlHelper, string>(DefaultEditorTemplates.StringTemplate));

Приветствия за любую помощь Тони

Обновить

Забыл упомянуть. Причина, по которой я это делаю, заключается в том, чтобы воспользоваться ненавязчивой проверкой, которая есть в MVC 3

1 ответ

Решение

Почему бы просто не использовать @Html.TextBoxFor(m => m) вместо EditorFor в вашем редакторе шаблона?:)

Другие вопросы по тегам