我相信这很简单,我似乎无法找到正确的方法来显示模型中列表中项目的显示名称.
我的简化模型:
public class PersonViewModel
{
public long ID { get; set; }
private List<PersonNameViewModel> names = new List<PersonNameViewModel>();
[Display(Name = "Names")]
public List<PersonNameViewModel> Names { get { return names; } set { names = value; } }
}
Run Code Online (Sandbox Code Playgroud)
和名称:
public class PersonNameViewModel
{
public long ID { get; set; }
[Display(Name = "Set Primary")]
public bool IsPrimary { get; set; }
[Display(Name = "Full Name")]
public string FullName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
现在,我想创建一个表来显示一个人的所有名称,并获取DisplayNameFor FullName.明显,
@Html.DisplayNameFor(model => model.Names.FullName);
Run Code Online (Sandbox Code Playgroud)
不行,并且 …
我听说在视图中使用@foreach是禁忌.意思是,视图中不应该有任何逻辑.什么是@foreach逻辑应该在哪里的最佳实践?
@foreach..
Run Code Online (Sandbox Code Playgroud) 我有一个模型类,有这样的属性:
[Display(Name = "Phone", Description="Hello World!")]
public string Phone1 { get; set; }
Run Code Online (Sandbox Code Playgroud)
在我的视图中显示标签并渲染文本框以进行输入非常简单:
@Html.LabelFor(model => model.Organization.Phone1)
@Html.EditorFor(model => model.Organization.Phone1)
@Html.ValidationMessageFor(model => model.Organization.Phone1)
Run Code Online (Sandbox Code Playgroud)
但是如何渲染Description annotation属性的值,即"Hello World!"?