Passare una classe a un metodo come parametro?

lunedì 17 settembre 2007 - 15.58

roccomita Profilo | Newbie

Salve a tutti,
sono giorni che cerco di fare questa cosa. Vi spiego. Ho una serie di classi che contengono un solo metodo statico di nome CONTROLLO.
Vorrei creare un metodo universale per poter richiamare questo metodo passandoli solo il nome della classe di appartenenza.

Spero di essere stato chiaro.
Qualcuno ha qualke idea?

Grazie

AndreaKpr Profilo | Senior Member


Ciao.
Per ottenere ciò che ti server occorre utilizzare le Interfaccie.

Prova a darci un occhio,
http://programmazione.html.it/guide/lezione/1135/le-interfacce/

munissor Profilo | Senior Member

Con le interfacce non puoi gestire metodi statici..

L'unico modo è la reflection

Passi il tipo dell'oggetto al metodo es ChiamaControllo(typeof(TuoTipo))

poi in ChiamaControllo fai

MethodInfo method = type.GetMethod("CONTROLLO"); // il parametro è il nome del metodo.. ci sono ulteriori parametri volendo. l'esempio è semplicistico
method.Invoke(null, args); // il primo parametro è l'istanza dell'oggetto su cui chiamare il metodo (null se statico), il secondo è un object[] che rappresenta i parametri da passare al metodo chiamato

roccomita Profilo | Newbie

Ok proverò il procedimento che mi hai appena dato.
Ti dico la verità, io non ci sarei mai arrivato.
Cmq ti ringrazio tantissimo.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5