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

  • Kanál používateľa McsFuego

    Kanál použ

    12 EKİM 2011
  • Moodle

    Moodle

    11 Mayıs 2010
  • NewsyTech

    NewsyTech

    2 AĞUSTOS 2010