问题描述
我正在尝试构建一些半通用编辑器模板,以减少我编写的重复布局 HTML 的数量,即处理标签、输入、验证消息等。我想将它们与 EditorFor 一起使用,如下所示:>
@Html.EditorFor(m => m.Property,"MyLayoutTemplate")
我想明确指定模板,因为仍应使用该属性的任何 UIHInt 属性。
简化的布局编辑器模板可能如下所示:
<div class="form-group")>
@Html.Label(ViewData.ModelMetadata.displayName,new {@class = ... })
<div class="...">
[EditorHere]
@Html.ValidationMessage(ViewData.ModelMetadata.PropertyName,string.Empty,new { @class = "text-danger" })
</div>
</div>
我想让编辑器替换上面的 [EditorHere] 标记,即我想以某种方式调用 EditorFor 方法。可能吗?
无论是否输入模板,调用 EditorFor(m => m) 都不起作用。但是,我认为这必须以某种方式实现,因为 ViewData.ModeMetadata 似乎包含所有必需的信息。
我知道如何使用 HtmlHelper 扩展方法来实现这一点,而且我已经这样做了。但是,我不太喜欢在代码中构建 HTML。
这个问题与Extending Asp.net MVC 3 Editor Templates基本相同,但是我不能使用答案,因为我不想使用默认编辑器。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)