SORU
24 EKİM 2008, Cuma


Oluşturulduktan sonra anonim tür özellik Ekle

Bazı yardımcı yöntemler için benim Html Öznitelikleri geçirmek için isimsiz bir nesne kullanın. Eğer tüketici bir ID özniteliği eklemek, yapmasaydın, Yardımcısı benim yöntemi de eklemek istedim.

Nasıl bu isimsiz nesne için öznitelik ekleyebilir miyim?

CEVAP
11 Aralık 2010, CUMARTESİ


Aşağıdaki uzantısı sınıfı, ihtiyacınız olan her şeyi elde eder.

public static class ObjectExtensions
{
    public static IDictionary<string, object> AddProperty(this object obj, string name, object value)
    {
        var dictionary = obj.ToDictionary();
        dictionary.Add(name, value);
        return dictionary;
    }

    // helper
    public static IDictionary<string, object> ToDictionary(this object obj)
    {
        IDictionary<string, object> result = new Dictionary<string, object>();
        PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(obj);
        foreach (PropertyDescriptor property in properties){
            result.Add(property.Name, property.GetValue(obj));
        }
        return result;
    }
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BrandonHarrisWalker

    BrandonHarri

    27 Kasım 2006
  • DancingIsAPassion

    DancingIsAPa

    29 AĞUSTOS 2009
  • Sparta Spartanutul

    Sparta Spart

    18 HAZİRAN 2013