如何设置特定于正在编辑的模型的编辑器模板的名称和值?

时间:2013-07-21 16:00:44

标签: asp.net-mvc model mvc-editor-templates

我正在尝试使用编辑器模板来标准化mvc4中多个模型的datepicker字段的显示。

例如,我想要一个新闻模型上的PublishDate属性的标准显示,以及一个事件模型上的EventDate属性。

我创建了一个Datepicker.cshtml模板,并为每个模型属性将UIHint设置为“Datepicker”。到现在为止还挺好。

但是如何将编辑器模板的名称和值设置为当前模型?

期望的结果

我想使用相同的编辑器模板来创建这样的输入:

<input name="EventDate" value="{CurrentEventDate}" class="datepicker"..... />

<input name="PublishDate" value="{CurrentPublishDate}" class="datepicker".... />

2 个答案:

答案 0 :(得分:0)

在Datepicker.cshtml模板中使用它,并将其放在Views / Shared / EditorTemplates下:

@model System.DateTime

@Html.TextBox("", Model, new { @class = "datepicker" })

并且,在您的主视图中:

@Html.EditorFor(model => model.EventDate)
@Html.EditorFor(model => model.PublishDate)

答案 1 :(得分:0)

您是否坚决要使用:

  

name =“ @ Html.NameForModel()”

id也存在。