是否可以使用单独的uihint模板,一个用于显示,另一个用于编辑?如果是,如何实现这一目标?
例如:
public class PartyRole
{
[Required]
[UIHint("DropDownList")]
public int PartyRoleTypeId { get; set; }
}
我正在使用EditForModel()和DisplayForModel()。
在编辑中,我将该属性显示为下拉列表。但在显示中我应该将其显示为简单文本。
答案 0 :(得分:1)
是否可以使用单独的uihint模板,一个用于显示,另一个用于编辑?
不,这是不可能的。它应该是同一个名字。 EditorTemplate位于~/Views/Shared/EditorTemplates
,显示模板位于~/Views/Shared/DisplayTemplates
。如果由于某种原因你绝对需要为模板命名,你可以将它们作为参数传递给助手,而不是使用UIHint:
@Html.EditorFor(x => x.Foo, "SomeEditorTemplate")
@Html.DisplayFor(x => x.Foo, "SomeDisplayTemplate")