【发布时间】:2011-05-09 06:10:32
【问题描述】:
没有用空字符串覆盖 ViewData.TemplateInfo.HtmlFieldPrefix,有没有办法防止前缀通过嵌套的强类型 EditorFor 或 DisplayFor 帮助器调用?
这是我迄今为止工作的丑陋标记/代码:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.Web.Mvc.SelectList>" %>
<% ViewData.TemplateInfo.HtmlFieldPrefix = ""; %>
<%=Html.DropDownList("sort", Model)%>
我已经尝试过允许指定htmlFieldName 的*For 重载,但这只会改变直接级别。如果我在调用时有前缀,我只需更改附加到前缀的内容。
我可以手动编写模板标记,但是对于 SelectList 对象这样做似乎最终会通过一个调整来复制 MVC 源,因为它涉及对象数据绑定逻辑。
【问题讨论】: