谁能解释一下 MVC 中 UIHint 属性的用途。我们为什么需要这个。以及何时以及如何使用。谢谢
问问题
38458 次
1 回答
93
UIHintAttribute指定动态数据用来显示数据字段的模板或用户控件。
这是 UIHintAttribute 的 MSDN 描述。它最初是为动态数据应用程序引入的,ASP.NET MVC 也对其进行了改编。
如果您使用 UIHint 属性注释属性并在视图中使用EditorFor
or DisplayFor
,则 ASP.NET MVC 框架将查找您通过UIHintAttribute
. 它查找的目录是:
对于EditorFor
:
~/Views/Shared/EditorTemplates
~/Views/Controller_Name/EditorTemplates
对于DisplayFor
:
〜/视图/共享/显示模板
~/Views/Controller_Name/DisplayTemplates
如果您在一个区域,它也适用于您的区域,如上所示。
这是使用示例:
public class Person {
[UIHint("Poo")]
public string Name { get; set; }
}
poo
如果您尝试使用以下EditorFor
或DisplayFor
类似的方式输出模型属性, MVC 框架将在指定目录下查找命名的局部视图:
@model MyApp.Models.Person
<h2>My Person</h2>
@Html.DisplayFor(m => m.Name)
于 2011-11-19T20:45:46.633 回答