2012-07-23 16 views

答えて

12

各プロパティの名前を取得しますか?各PropertyInfoをLINQ Selectメソッドを使用して投影し、MemberInfo.Nameプロパティを選択するには、LINQを使用します。

myClassObject.GetType().GetProperties().Select(p => p.Name).ToList() 

またはVBで、私はそれが可能だと思う:

myClassObject.GetType.GetProperties.Select(Function (p) p.Name).ToList 
+0

ありがとう!オブジェクトレベルではなくクラスレベルでこれを行うことは可能ですか? Class.GetProperties()などを使用できますか? – Prabhu

+1

@Prabhuはい、 'myClassObject.GetType()'を 'GetType(ClassName)'に変更してください。 –

+1

@Prabhu:あるいはC#の 'typeof(Foo).GetProperties()'です。 –

2
var propertyNames = myClassObject.GetType().GetProperties().Select(p => p.Name).ToList(); 

(列の)リストを必要とするか、または、しかし

myClassObject.GetType().GetProperties.ToList() 

を、あなたが事前に使用するタイプを知っていれば、あなたはできる:

var propertyNames = typeof(ClassName).GetProperties().Select(p => p.Name).ToList(); 
関連する問題