Ne Tür İlkel Test etmek İçin | Netgez.com
SORU
14 Mart 2010, Pazar


Ne Tür İlkel Test etmek İçin

Html etiketi içine bir tür ciddi bir kod bloğu var.

Type t = typeof(T); // I pass <T> in as a paramter, where myObj is of type T
tagBuilder.Attributes.Add("class", t.Name);
foreach (PropertyInfo prop in t.GetProperties())
{
    object propValue = prop.GetValue(myObj, null);
    string stringValue = propValue != null ? propValue.ToString() : String.Empty;
    tagBuilder.Attributes.Add(prop.Name, stringValue);
}

Bu harika çalışıyor, ama ben bunu istiyorum sadece bunu yapmak için ilkel türleri gibi int, double, bool vb, ve diğer türleri değil ilkel ama olabilir seri kolay gibi string. Listeler ve diğer özel türler gibi her şeyi görmezden gelmek istiyorum.

Herkes nasıl yaptığımı öneririm bu? Ya da bir yere atıp özelliği ise izin olup olmadığını görmek için anahtar türü üzerinde izin istiyorum türlerini belirtmek gerek var mı? Biraz pislik, eğer ben orada düzenli bir şekilde olsaydı daha güzel olurdu.

CEVAP
14 Mart 2010, Pazar


O ilkel olduğunu düşündüğümüz bazı türleri vardır çünkü özelliği Type.IsPrimitive kullanın, ama dikkatli olabilir, ama, örneğin Decimal String onlar öyle.

Edit 1:Eklenen örnek kod

İşte örnek bir kod:

if (t.IsPrimitive || t == typeof(Decimal) || t == typeof(String) || ... )
{
    // Is Primitive, or Decimal, or String
}

Edit 2:@SLaks yorumlar gibi, belki de ilkel olarak da tedavi etmek istediğiniz diğer türleri vardır. O sen bu varyasyonlar eklemeyi düşünüyorumtek tek. Edit 3:İsPrimitive = (Byte, SByte, Int16, Uınt16, Int32, Uınt32, Int64, Uınt64, IntPtr, UİntPtr, Char, Double, ve Tek Boolean), İlkel-kontrol tipi == sattığınız(DateTime) t () anter

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • Britec09

    Britec09

    4 Mart 2009
  • Electro Posé

    Electro PosÃ

    21 ÅžUBAT 2013
  • ShayLoss

    ShayLoss

    5 Kasım 2009