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

  • bashirsultani

    bashirsultan

    22 Mart 2010
  • Music EuroDance 2

    Music EuroDa

    12 Mayıs 2011
  • Tahir Jahi

    Tahir Jahi

    6 Mart 2006