PDA

View Full Version : [C#]Non riesco a farmi restituire una stringa


RaouL_BennetH
26-02-2007, 13:29
Ciao a tutti :)

Ho sempre il mio form, con diversi controlli su, alcuni dei quali mi servono fondamentalmente a far eseguire delle query su un db mysql.

Per l'esempio dell'azione che ho in uno di questi controlli:



//è giusto un esempio

String[] getTableName = new String(3);
getTableName[0] = mioComboBox.SelectedText;
getTableName[1] = altroTestodiAltroControlloSulForm;
getTableName[2] = getTableName[0] + "_" + getTableName[1];



Ora, volevo scrivere una funzione a livello di form, che mi eviti di creare questa stringa (dato che i controlli dai quali prendo il testo per formare la mia stringa sono sempre gli stessi).

Con questo modo di fare, ottengo che quando devo crearmi la query faccio:



string creaTabella = "DROP TABLE IF EXISTS" " + getTableName[2] + "; ";

//però poi in un altro controllo del from avrò associato una query di select, per esempio:

string selezionaDati = "SELECT * FROM " + getTableName[2] + " ";



In questo modo però, sono costretto ad utilizzare un array di stringhe in ogni controllo sul form.

Attendo come sempre i vostri preziosi consigli.

Grazie.

RaouL.

Lupin3d
26-02-2007, 14:42
Ciao...
scusa ma io non ho capito perchè devi crearti l'array di stringhe...:confused:
nel tuo form hai sempre il riferimento agli oggetti che sono contenuti in esso...


string myTableName = mioComboBox.SelectedText +altroTestodiAltroControlloSulForm;
string creaTabella = "DROP TABLE IF EXISTS" " + myTableName+ "; ";

//però poi in un altro controllo del from avrò associato una query di select, per esempio:

string selezionaDati = "SELECT * FROM " +myTableName + " ";


ma forse non ho capito bene io o non hai detto tutto tu :)

RaouL_BennetH
26-02-2007, 15:25
No, è che come al solito mi sono spiegato da capra :( (chiedo scusa a te e a tutti).

Una procedura come la suggerisci tu, è la prima cosa che ho fatto. Il fatto che utilizzo un array era a puro scopo di esempio, in realtà un'unica stringa va benissimo. La mia domanda era rivolta al fatto che volevo capire (sempre a scopi didattici) come scrivere una funzione che mi ritorni il valore di quella stringa, ed utilizzare quella funzione anzichè la stringa stessa.

Cioè, per esempio, per la connessione al database io faccio una cosa molto semplice:


public static MySqlConnection Create()
{

string connectionString = "database=miodb;server=mioserver;port=numeroporta;user id=user;password=password";
MySqlConnection connessione = new MySqlConnection(connectionString);
connessione.Open();
return connessione;
}


Poi, da un qualsiasi form richiamo:



try
{
using(MySqlConnection cn = MiaClasse.Create())
{
//blablabla
}
}
catch(blablabla)
{}


In sostanza, a me serve fare la stessa cosa con una funzione però.

Ribadisco che mi servirebbe capire questa cosa solo a scopo puramente didattico e non a fini pratici :)

Grazie ancora :)

RaouL.