ASP.Net MVC 2.0:EditorFor通过属性设置名称

时间:2010-02-09 21:59:34

标签: c# .net asp.net-mvc-2 attributes editorfor

只是想知道如何使用属性来模仿以下内容......

<%= Html.EditorFor(x => x.SportProgramIdList, "FormMultiSelectDropDownList", "SportProgramIds")%>

我知道我可以使用[UIHint(“FormMultiSelectDropDownList”)]来指定模板,但我仍然遇到如何设置名称的问题......

干杯 安东尼

2 个答案:

答案 0 :(得分:0)

我猜你必须创建自己的CustomAttribute UINameAttribute。 您可以使用ModelMetadata保留您的属性,然后我不确定获得它的最佳方法是什么,我猜您必须在没有参数的情况下覆盖HtmlHelper.EditorFor扩展并传递给您属于下一个。

我太懒了,厌倦了尝试更完整的答案。

看看:

Why You Don't Need ModelMetadata.Attributes

ASP.NET MVC 2 Templates, Part 2: ModelMetadata

答案 1 :(得分:-1)

使用objectAttributes参数

<%= Html.EditorFor(x => x.SportProgramIdList, "FormMultiSelectDropDownList", new { id="SportProgramIds" }) %>>

您可以使用它来设置任何html输入属性