Cyr*_*Cyr 1 c# asp.net-mvc data-annotations entity-framework-6
我正在使用带有EntityFramework 6 DataAnnotations的asp.net MVC 5。我想知道是否有一种方法来获取所有DisplayName对象并将它们保存在变量中到Controller类中。
例如,考虑以下类:
public class Class1
{
[DisplayName("The ID number")]
public int Id { get; set; }
[DisplayName("My Value")]
public int Value { get; set; }
[DisplayName("Label name to display")]
public string Label { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
如何获取DisplayName所有属性的值?例如,如何创建一个返回a的函数,该函数Dictionary< string,string >的键具有属性名称和值为的键DisplayName,如下所示:
{ "Id": "The ID name", "Value": "My Value", "Label": "Label name to display"}.
Run Code Online (Sandbox Code Playgroud)
我已经看到了这个主题stackoverflow-获取DisplayName属性的值,但是我不知道扩展此代码的方法。
如果您不是很在意DisplayName属性,而是在使用有效的显示名称(例如通过数据绑定),那么最简单的方法是使用TypeDescriptor.GetProperties方法:
var info = TypeDescriptor.GetProperties(typeof(Class1))
.Cast<PropertyDescriptor>()
.ToDictionary(p => p.Name, p => p.DisplayName);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1805 次 |
| 最近记录: |