PDA

View Full Version : [C#] Implementare classe in un progetto


Nirvak
02-05-2009, 18:36
Ciao a tutti.
Premetto che sono un niubbone e vorrei sapere come posso utilizzare in un progetto una classe creata precedentemente per un altro progetto senza però copiare e incollare l'intero codice nel progetto attuale.
In poche parole vorrei sapere qual è il metodo per richiamare quella classe nel mio nuovo progetto.

Devo utilizzare una direttiva using all'inizio del codice?

Utilizzo SharpDevelop come ambiente di sviluppo.

alex783
02-05-2009, 21:46
Ciao, se la classe è disponibile sotto forma di codice sorgente, così come mi è parso di capire, basta che la includi nel progetto e poi, ad esempio, se ha dei metodi statici, basta che li richiami così:

nomeClasse.nomeMetodo();

oppure se non ha metodi statici, devi creare un oggetto del tipo della classe, così:

nomeClasse nomeOggetto= new nomeClasse();

questa istruzioni dichiara e crea un oggetto invocando il costruttore nomeClasse()

e poi così richiami il metodo dall'oggetto creato:

nomeOggetto.nomeMetodo();

P.S:
visto che sei ancora all'inizio, ti consiglio di dare una lettura a questa dispensa, ti sarà molto utile: http://alancla.110mb.com/downloads/ABCGuidaAllaProgrammazione.zip

Nirvak
03-05-2009, 00:58
Grazie per il libro, è proprio quello da cui sto partendo.

Tornando alla classe facendo come dici tu mi dà un errore in compilazione come se non riconoscesse il tipo di classe.
Infatti la classe non si trova all'interno del codice del mio progetto, ma è un file .cs che si trova all'esterno del mio progetto e che vorrei implementare.

MarcoGG
03-05-2009, 08:53
Infatti la classe non si trova all'interno del codice del mio progetto, ma è un file .cs che si trova all'esterno del mio progetto e che vorrei implementare.

Allora compilala come DLL e poi potrai richiamarla con :

using nomeDLL;

Nirvak
03-05-2009, 11:53
Ho capito dove sbagliavo: dovevo rinominare il namespace, perchè sharpdevelop lascia un nome di default e utilizzando

using nomeClasse

non funzionava.

Grazie dell'aiuto.

MarcoGG
03-05-2009, 13:44
Ma per curiosità, perchè non usi C# 2008 Express ? :stordita:

http://www.microsoft.com/express/vcsharp/

Nirvak
03-05-2009, 13:55
Me lo consigli al posto di SharpDevelop?

MarcoGG
03-05-2009, 14:01
Me lo consigli al posto di SharpDevelop?

Mah, diciamo che personalmente non l'ho mai usato, ma conosco più di una persona che se n'è lamentata. Dal momento che C# è MS, e MS ne fornisce una versione free, perchè no ? :)

Nirvak
03-05-2009, 17:54
Ok.
L'ho scaricato e lo sto provando.
Vi faccio sapere le sensazioni.

Grazie a tutti.