【发布时间】:2016-03-28 17:39:13
【问题描述】:
当我为 Creating MVC View,using Entity Framework 使用 Visual Studio 脚手架选项时,Visual Studio 创建视图并将模型名称放在每个视图的顶部,并且还使用 DisplayName 作为字段标签。即它关心字段的Display 注释。例如这是我的模型类:
namespace ProjectManager.Models
{
[Display(Name="A More Readable Name for my class to display it to users!")]
public class MyVeryComplicatedlyNamedModel
{
[Display(Name="نام(Description for name field in Unicode)")]
string Name;
}
}
自动生成的视图如下:
@model Project.Models.MyVeryComplicatedNamedModel
@{
ViewBag.Title = "Details";
}
<h2>Details</h2>
<div>
<h4>MyVeryComplicatedNamedModel</h4>
....
....
我想知道是否有任何方法可以为类本身设置 DisplayName,以便显示为 h4 标记 (<h4>MyVeryComplicatedNamedModel</h4>) 的视图标题更具可读性并且我可以选择自己的描述?关键是我不想操作自动创建的视图来这样做,我想使用某种注释来帮助 Visual Studio 为类名选择我自己的描述,
使用语法Display(Name='')会导致错误Attribute 'Display' is not valid on this declaration type. It is only valid on 'method, property, indexer, field, param' declarations.
【问题讨论】:
-
为什么要在课堂上使用它?
-
自动将类的可读名称放入视图中。
-
不适合用户阅读你说的是哪个名字?如果你在谈论@model SomeClass,它不是供用户阅读的,它是供 Razor 了解您的视图绑定到什么类型的。
-
@VSB:你在说什么?与其模糊地试图描述你的观点,不如在问题中展示出来。
-
为什么您的用户会阅读您的类名?他们应该不知道也不在乎你如何称呼你的课程。
标签: c# asp.net asp.net-mvc visual-studio-2012 asp.net-mvc-5