我使用属性描述符对属性进行一般迭代并将它们的属性名称打印为表头。它可以很好地打印属性名称,但不适用于 [Display(Name = "Test")]
班级:
public class Transaction
{
[Display(Name = "Test")]
public string DELETE { get; set; }
public string PARTNO { get; set; } //Part Number
标记:
@foreach (System.ComponentModel.PropertyDescriptor descriptor in System.ComponentModel.TypeDescriptor.GetProperties(Model[0]))
{
<th onclick="tableColumnSort(this)" class="tableSortHeaderBtnStyle">@descriptor.DisplayName;</th>
}
只打印“DELETE”名称而不是“Test”。描述符有一个 Name 和 DisplayName 选项,两者都设置为“DELETE”
我究竟做错了什么?
您必须使用[DisplayName("Test")]
而不是[Display(Name = "Test")]
,请检查:
public class Transaction
{
//[Display(Name = "Test")]
[DisplayName("Test")]
public string DELETE { get; set; }
public string PARTNO { get; set; } //Part Number
}
您可以在DotNetFiddle中查看。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句