Si possible, l'interface IList
non-générique serait l'approche la plus simple:
IList list = (IList)MyObject.ItProperty;
list.Add(obj);
Sinon, vous devrez:
- trouver le
T
approprié (par réflexion)
- résoudre la méthode
Add
à partir de IList<T>
(en utilisant la réflexion)
- invoke the
Add
méthode (en utilisant la réflexion)
que la réflexion, en particulier sur les génériques, n'est pas agréable. Comme alternative - si vous avez 4.0 vous pouvez essayer d'utiliser dynamic
, mais notez que cela ne voit que l'API publique. La peine d'essayer si (seulement si IList
échoue):
dynamic list = MyObject.ItProperty;
list.Add(obj); // let's hope Add isn't an explicit interface implementation
Je pense qu'il vous manque du texte. Il se termine par "J'ai essayé avec:". –
J'ai changé ça. Désolé et merci. – thom