SORU
29 Temmuz 2009, ÇARŞAMBA


C anonim tür özelliğine nasıl erişileceğini#?

Bu var:

List<object> nodes = new List<object>(); 

nodes.Add(
new {
    Checked		= false,
    depth		= 1,
    id			= "div_"   d.Id
});

... ve eğer alabilirsem merak ediyorum "" isimsiz nesne. özellik Kontrol Eğer bu mümkün olup olmadığından emin değilim. Bunu yapmaya çalıştı

if (nodes.Any(n => n["Checked"] == false)) ... ama bir işe yaramıyor.

Teşekkürler

CEVAP
29 Temmuz 2009, ÇARŞAMBA


Eğer tür nesneyi saklıyorsanız object, yansıma kullanmanız gerekir. Bu herhangi bir nesne türü gerçek, ya da başka anonim. Bir nesne o, kendi türü:

Type t = o.GetType();

Bu bir özellik sen bak o zaman:

PropertyInfo p = t.GetProperty("Foo");

Bundan bir değer elde edebilirsiniz:

object v = p.GetValue(o, null);

Bu cevap uzun C# 4: bir güncelleştirme için gecikti

dynamic d = o;
object v = d.Foo;

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • androidandme

    androidandme

    10 Mart 2009
  • Gimpology.com Video Tutorials

    Gimpology.co

    3 ŞUBAT 2008
  • Pituvision

    Pituvision

    11 Mart 2006