试图找到一种方法来获得类的字段名称

时间:2015-11-26 21:02:30

标签: c# class

所以我希望能够获得一个类的字段

public class Person
{
    public string Id { get; set; }
    public string Firstname { get; set; }
    public string Lastname { get; set; }
}

所以我将能够从一个类中获取公共字段名称,在这种情况下,我想要一个字符串列表{" Id"," Firstname",&# 34;姓氏"}

4 个答案:

答案 0 :(得分:4)

您可以使用反射来获取类型的属性或字段:

var properties = typeof(Person)
                     .GetProperties()
                     .Select(p => p.Name)
                     .ToList();

答案 1 :(得分:0)

反射是您的关键字。尝试像

这样的东西
typeof(Person).GetProperties();

然后你可以迭代结果并得到名字。

答案 2 :(得分:0)

你可以利用反思。

var propertiesInfos = typeof(Person).GetProperties(BindingFlags.Public |
                                          BindingFlags.Static);
var propertieNames = string.Format("{{0}}",propertiesInfos.Select(prp=>prp.Name));

答案 3 :(得分:0)

您可以使用nameof(..),并按照以下方式执行操作:

string nameOfField = nameof(Lastname);