Подтвердить что ты не робот

Что такое атрибут UIHint в MVC

Может кто-нибудь объяснить мне, что такое использование атрибута UIHint в MVC. Зачем нам это надо. и когда и как использовать. Спасибо

4b9b3361

Ответ 1

UIHintAttribute Задает шаблон или пользовательский элемент управления, который использует Dynamic Data для отображения поля данных.

Это описание MSDN для UIHintAttribute. Сначала он был введен для приложений Dynamic Data, и ASP.NET MVC также адаптировал его.

Если вы аннотируете свойство с атрибутом UIHint и используете EditorFor или DisplayFor внутри своих представлений, структура ASP.NET MVC будет искать указанный шаблон, который вы указали через UIHintAttribute. Каталоги, которые он ищет:

Для EditorFor:

~/Views/Shared/EditorTemplates

~/Views/Controller_Name/EditorTemplates

Для DisplayFor:

~/Views/Shared/DisplayTemplates

~/Views/Controller_Name/DisplayTemplates

Если вы находитесь в зоне, это относится и к вашей области, как указано выше.

Вот пример использования:

public class Person { 

    [UIHint("Poo")]
    public string Name { get; set; }
}

Структура MVC будет искать частичный вид с именем poo в указанных каталогах, если вы попытаетесь вывести свойство модели с помощью EditorFor или DisplayFor, как показано ниже:

@model MyApp.Models.Person

<h2>My Person</h2>

@Html.DisplayFor(m => m.Name)