我有以下代码
<div class="editor-label">
@Html.LabelFor(model => model.subCategoryName)
</div>
Run Code Online (Sandbox Code Playgroud)
它将html呈现为
<div class="editor-label">
<label for="subCategoryName">Sub-Category Name</label>
</div>
Run Code Online (Sandbox Code Playgroud)
如何在没有<label>但仍从ViewModel DataAnnotations获取值的情况下呈现干净的HTML,如:
[Display(Name = "Sub-Category Name")]
public string subCategoryName { get; set; }
<div class="editor-label">
Sub-Category Name
</div
Run Code Online (Sandbox Code Playgroud)
我已经尝试了@ Html.XXXXXX(.DisplayTextFor,.DisplayNameFor等等)的所有方法 - 并且仍然无法使其工作.
我已经创建了自定义编辑器模板和显示模板.我已将这些类型中的每一种放在我的views文件夹中的一个文件夹中.这些文件夹被命名为EditorTemplate或DisplayTemplate,具体取决于创建的模板类型.
所以,现在我可以使用EditorFor来使用我的自定义编辑器模板,或者使用DisplayFor作为我的自定义编辑器模板.
我想为LabelFor创建一个自定义模板,但我还没有找到这样的例子.我会在我的Views文件夹中创建一个名为Labeltemplate的文件夹并在此处添加吗?
UPDATE
我试图扩展LabelFor的原因是处理KeyValuePair类型的Property.我想使用此属性的Key作为Label,将值作为Display.我在这里问了一个关于DisplayFor来处理Value的问题.
我的解决方案最终成为>
@Html.DisplayFor(m => m.MyProperty, @Model.MyProperty.Key)
Run Code Online (Sandbox Code Playgroud)
谢谢,