C# 在Html.labelFor中添加一个空格
我有一些密码C# 在Html.labelFor中添加一个空格,c#,asp.net-mvc,C#,Asp.net Mvc,我有一些密码 <div class="form-group"> @Html.LabelFor(m => m.MiddleName, new { @class = "col-md-3 control-label" }) <div class="col-md-9"> @Html.TextBoxFor(m => m.MiddleName, new { @class = "form-control" }) @Html.V
<div class="form-group">
@Html.LabelFor(m => m.MiddleName, new { @class = "col-md-3 control-label" })
<div class="col-md-9">
@Html.TextBoxFor(m => m.MiddleName, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.MiddleName)
</div>
@LabelFor(m=>m.MiddleName,新的{@class=“col-md-3控制标签”})
@TextBoxFor(m=>m.MiddleName,新的{@class=“form control”})
@Html.ValidationMessageFor(m=>m.MiddleName)
我遇到的问题是,标签显示为“MiddleName”,我如何编写它,使其显示为“MiddleName”这可能不是最佳解决方案,但您可以使用不同的
LabelFor()
重载显式指定标签文本:
@Html.LabelFor(
m => m.MiddleName, "Middle Name", new { @class = "col-md-3 control-label" })
试着这样做:
@Html.LabelFor(m => m.MiddleName,"Middle Name")
在您的模型上使用以下选项:
[Display(Name = "Middle Name")]
public string MiddleName { get; set; }
您完全可以将其直接添加到标签本身,如建议的公认答案所示:
@Html.LabelFor(m => m.MiddleName, "Middle Name")
但是,如果有多个控件引用同一文本,您将发现自己在重复相同的代码,例如,如果您还在验证消息中显示字段名。在这种情况下,您可能会发现将其添加到模型中更容易、更优雅:
[Display(Name = "Middle Name")]
public string MiddleName { get; set; }
我得到一个错误,上面写着“System.ComponentModel.DataAnnotations.DisplayAttribute不包含接受1个参数的构造函数”@TheDizzle您会得到一个错误,因为这个属性接受命名参数,所以您需要使用
[Display(Name=“Middle Name”)]
。请查看我的答案以了解完整的详细信息。@TheDizzle虽然这样做有效,但您可能会发现最好在模型中指定一次,尤其是当您有多个控件引用同一字段时。