ASP.Net MVC 2 - 如何阻止视图在字段上使用前缀?

时间:2010-08-23 10:33:58

标签: asp.net-mvc

ASP.Net Html.TextBoxFor(以及其他XxxxxFor编辑器帮助器方法)默认为呈现字段前缀。如何禁用字段前缀,以便将属性名称简单地呈现为名称/ ID?

以下是一个例子:

<%= Html.EditorFor(m => chart.Title) %>

呈现为:

<input id="Chart_Title" name="Chart.Title" type="text" value="">

我希望将其渲染为:

<input id="Title" name="Title" type="text" value="">

2 个答案:

答案 0 :(得分:2)

EditorFor的重载中有一个名为htmlFieldName的参数。在这里指定你的名字。

答案 1 :(得分:1)

帮助者会接受你提供的任何东西。所以你需要传入变量的“Title”部分;也许尝试为变量分配标题,并为该Title变量使用Html.EditorFor,这可能会给你一个不同的响应。

它这样做的原因是帮助器被设置为从Model上下文反映出来,所以通常你可以看到Model.Chart.Title,因此,帮助器在名称中创建这个路径,以便它可以发布整个模型回到动作方法,如果需要的话。

HTH。