SORU
10 NİSAN 2009, Cuma


Nasıl bir sınıf özellikleri listesini almak için?

Nasıl bir sınıfın tüm özelliklerini bir liste alabilirim?

CEVAP
10 NİSAN 2009, Cuma


Yansıma; bir örneği için:

obj.GetType().GetProperties();

bir türü:

typeof(Foo).GetProperties();

örneğin:

class Foo {
    public int A {get;set;}
    public string B {get;set;}
}
...
Foo foo = new Foo {A = 1, B = "abc"};
foreach(var prop in foo.GetType().GetProperties()) {
    Console.WriteLine("{0}={1}", prop.Name, prop.GetValue(foo, null));
}

Aşağıdaki yorum

  • Statik özelliklerini değerini elde etmek için, GetValue ilk argüman olarak null pass
  • Halka açık olmayan özelliklerini aramak için kullanın (örneğin) GetProperties(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance) tüm kamu/özel örnek özellikleri verir ).

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Kanaal van Dj0fifty

    Kanaal van D

    28 EKİM 2011
  • Marques Brownlee

    Marques Brow

    21 Mart 2008
  • Ryan Ha

    Ryan Ha

    9 NİSAN 2006