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

  • Official Clouds

    Official Clo

    1 HAZİRAN 2011
  • Ralph Phillips

    Ralph Philli

    5 Aralık 2006
  • The Pet Collective

    The Pet Coll

    5 Ocak 2012