如何将类的公共属性名称转换为字符串列表?语法最好用VB.NET。
我试图做这样的事情:
myClassObject.GetType().GetProperties.ToList()
但是,我需要一个List(Of String)
答案 0 :(得分:13)
获取每个属性的名称?使用LINQ使用LINQ Select
方法对每个PropertyInfo
进行投影,选择MemberInfo.Name
属性。
myClassObject.GetType().GetProperties().Select(p => p.Name).ToList()
或者在VB中,我认为它会是:
myClassObject.GetType.GetProperties.Select(Function (p) p.Name).ToList
答案 1 :(得分:2)
var propertyNames = myClassObject.GetType().GetProperties().Select(p => p.Name).ToList();
或者,如果您事先知道要使用的类型,则可以执行以下操作:
var propertyNames = typeof(ClassName).GetProperties().Select(p => p.Name).ToList();