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