顯示屬性屬於模型,所以它應該包含純文本數據,沒有任何格式。
如果你想格式添加到名稱,你可以這樣做
編寫擴展方法從顯示名稱獲得價值
public static MvcHtmlString DisplayNameFor<TModel, TValue>(this HtmlHelper<TModel> html, Expression<Func<TModel, TValue>> expression, string templateName)
{
Expression expressionBody = expression.Body;
if (expressionBody is MemberExpression)
{
MemberExpression memberExpression = (MemberExpression)expressionBody;
string propertyName = memberExpression.Member.Name;
return html.DisplayFor(expression, templateName, new { Message = html.ViewData.ModelMetadata.Properties.Single(p => p.PropertyName == propertyName).Name});
}
}
查看:
@Html.DisplayNameFor(model => model.FirstName, "_NameTemplate")
模板:_NameTemplate.cshtml
<span>@ViewData["Message"]</span>
希望它對你有用