Html.LabelFor Указанный текст [ASP.NET MVC 2]
Кто-нибудь понял, как указать текст при использовании Html.LabelFor(c=>c.MyField)
. Это просто MyField
, возможно, не будет подходящим именем для отображения на экране, вам может понадобиться "Суперфантастическое поле", но, похоже, перегрузок нет.
Любые идеи?
Ответы
Ответ 1
Вы используете System.ComponentModel.DataAnnotations.DisplayAttribute
:
[Display(Name = "My Field")]
public string MyField { get; set; }
Настройка свойства ResourceType
в вашем атрибуте позволит вам использовать файл ресурсов.
(До .NET 4 используйте System.ComponentModel.DisplayNameAttribute
с оговоркой, что отображаемое имя должно быть константой времени компиляции.)
Ответ 2
Простое решение просто добавьте в представление следующее:
@Html.LabelFor(c=>c.MyField, "My Field")
Ответ 3
В MVC 3 появилась новая перегрузка, поэтому вы можете указать специальный тест для помощника labelfor.
Ответ 4
Я еще не загрузил v2, поэтому я не могу протестировать, но я считаю, что он работает как DynamicData, и в этом случае вы бы сделали что-то подобное в своей модели:
[Display(Name = "The Super Fantastic Field")]
public string MyField {get;set;}
Ответ 5
Я еще не проверил CP1, но я прочитал его версию Scott, и, похоже, я помню, что код был создан T4. Полагаю, вы всегда можете это изменить, но я подозреваю, что они будут обеспечивать перегрузки в CP2.
Изменить: источник всегда доступен, и вы можете просто модифицировать метод, сменить генератор T4, и вам будет хорошо идти. Также поставьте билет или запрос (каким-то образом) для этого мода, чтобы он работал в следующей версии.
Ответ 6
Есть 5 перегрузок. Несколько предлагают второй параметр "string labelText", который вы установили бы в "Суперфантастическое поле".
Ответ 7
Существует два способа: 1 "прямые аннотации"
2 "Аннотатины с ресурсом"
Прямые аннотации
[Display(Name = "My Field")]
public string MyField { get; set; }
Annotatinos с ресурсом
[Display(Name = "My_Field",ResourceType = typeof(Resource))]
public string MyField { get; set; }
Второй способ потребует добавить значение в файл ресурсов, который, вероятно, называется Resource.resx.
Используйте, который подходит для вашей цели.