843 messaggi dal 08 aprile 2009
Ho un metodo così:
 public string AddItems<T>(List<T> Lista) where T : class, new()
        {
            return DB.AddItems<T>(Lista,true,false);
        }



mi sto dannando per richiamarlo con la reflection
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao Laura, sei riuscita a risolvere?
La soluzione consiste nell'ottenere un riferimento al metodo e poi usare MakeGenericMethod fornendo l'effettivo tipo da usare.

Esempio, volendo invocare AddItems con una List<Person>
var lista = new List<Person>();
var tipo = typeof(TipoCheContieneAddItems);
var metodo = tipo.GetMethods(System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Public).Where(s => s.Name == "AddItems").First();
var methodInfo = metodo.MakeGenericMethod(new[] { typeof(Person) });
var risultato = methodInfo.Invoke(istanzaChaHaIlMetodo, new object[] { lista }) as string;


ciao,
Moreno

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.