8 messaggi dal 11 luglio 2009
Ciao a tutti,
vorrei sottoporvi il seguente problema:

Poniamo il caso che io abbia un file Class1.cs. All'interno di questa classe ho una serie di metodi. Uno di questi è il metodo Pippo.

Ora, poniamo il caso che io abbia, all'interno del codice della mia page, una string che contiene il nome della classe che voglio istanziare.

Ora chiedo: è possibile, data una variabile string s (che contiene il nome della classe da richiamare), richiamare la classe e quindi il metodo che mi interessa, passandogli n parametri?

Vi ringrazio...

Ciao
Francesco [O:)]
Fossi in te mi interrogherei sull'effettiva necessità, probabilmente puoi usare meglio la programmazione object oriented per far questo tipo di lavoro, tipo definendo un'interfaccia e implementandola nelle tue classi.

In ogni modo, la risposta è sì:
1) Recupera il Type tramite Type.GetType(..nome della classe..);
2) se il costruttore è pubblico, usa Activator.CreateInstace(Type)
3) se il costruttore è privato, devi recuperare il ConstructorInfo tramite reflection (con yourType.GetConstructor(..)) e poi chiamarne il metodo Invoke.

Ovviamente poi il tuo metodo dovrai invocarlo tramite reflection.

Per maggiori info, cerca i metodi che ti ho citato nella MSDN Library online.

Ciao,
m.
8 messaggi dal 11 luglio 2009
Ciao Cradle,
ho risolto... ho usato le potenzialità messe a disposizione dalla Reflection di C# e il gioco è stato abbastanza semplice ;-)

Cmq lunedì posterò un po' di codice così che possa essere sfruttato anche da qualcun'altro che ne abbia bisogno... o che trovi interessante lo spunto ;-)

Grazie
Ciao

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.