Если возможно, не унифицированная IList
интерфейс будет самый простой подход:
IList list = (IList)MyObject.ItProperty;
list.Add(obj);
В противном случае, вам придется:
- найти соответствующий
T
(с помощью отражения)
- разрешить метод
Add
от IList<T>
(с использованием отражения)
- вызывать
Add
метод (с помощью отражения)
, что отражение, особенно на воспроизведенных, не приятно.
В качестве альтернативы - если у вас есть 4.0, вы можете попробовать использовать dynamic
, но обратите внимание, что это видит только открытый API. Стоит попробовать, хотя (только если IList
терпит неудачу):
dynamic list = MyObject.ItProperty;
list.Add(obj); // let's hope Add isn't an explicit interface implementation
Я думаю, что вам не хватает текста. Это заканчивается словами «Я пробовал с:». –
Я изменил это. Извините и благодарю вас. – thom