2012-12-19 13 views
6

Sto provando a connettermi al mio server MySQL remoto, usando il seguente codice. Puoi dirmi cosa sto facendo male visto che la sostituzione delle informazioni di connessione al database con le variabili non sembra funzionare.Cosa c'è di sbagliato in questa stringa di connessione al database?

using MySql.Data.MySqlClient;  

    string db_Server = "10.0.0.0"; 
    string db_Name = "myDatabase"; 
    string db_User = "myUser"; 
    string db_Pass = "myPassword"; 


    // Connection String 
    MySqlConnection myConnection = new MySqlConnection("server = {0}; database = {1}; uid = {2}; pwd = {3}", db_server, db_Name, db_User, db_Pass); 

Come sviluppatore PHP, io preferisco usare il codice di cui sopra, invece della fusione deliberata di seguito:

MySqlConnection myConnection = new MySqlConnection("server=10.0.0.0; database=myDatabase; uid=myUser; pwd=myPassword"); 

Ma come si può vedere in questa immagine, mi stanno un sacco di ghirigori rossi : http://screencast.com/t/xlwoG9by

+4

'db_Server , db_Name, db_User, db_Pass' not 'db_Server, db_User, db_Pass, db_Name' – Bolu

risposta

10

ordine del suo parametro è sbagliato, dovrebbe essere:

db_server, db_Name, db_User, db_Pass 

Attualmente è:

"server = {0}; database = {1}; uid = {2}; pwd = {3}" 
     db_Server   db_User db_Pass db_Name 

Così la sua dichiarazione dovrebbe essere:

MySqlConnection myConnection = new MySqlConnection(string.Format(
"server = {0}; database = {1}; uid = {2}; pwd = {3}", 
db_Server,db_Name, db_User, db_Pass)); 

EDIT: sulla base dei commenti e la discussione, l'errore che si sta ottenendo è che si sta tentando tutte le cose a livello di classe. Dovresti avere queste linee all'interno di un metodo e chiamare quel metodo dove ti serve. Qualcosa di simile:

class MyClass 
{ 
    string db_Server = "10.0.0.0"; 
    string db_User = "myUser"; 
    string db_Pass = "myPassword"; 
    string db_Name = "myDatabase"; 


    public MySqlConnection GetConnection() 
    { 
     MySqlConnection myConnection = new MySqlConnection(string.Format(
        "server = {0}; database = {1}; uid = {2}; pwd = {3}", 
        db_Server, db_Name, db_User, db_Pass)); 
     return myConnection; 
    } 
} 
+1

Potrebbe anche essere necessaria una porta, dopo il server. –

+1

Ricorda di includere string.Format – Habib

+0

Non funziona per me ... ancora ricevendo gli squigglie rossi .... – Jeagr

1
MySqlConnection myConnection = new MySqlConnection(string.Format("server = {0}; database = {1}; uid = {2}; pwd = {3}", db_Server, db_User, db_Pass, db_Name)) 

string.Format() manca

+0

Con stringa. Formattare l'altro problema è un parametro errato, è necessario modificare tale valore in – Habib

+0

. Mi è mancato. Ma fondamentalmente gli scarabocchi rossi si verificano a causa della stringa mancante. Formattazione();) –

2

Ti dispiacerebbe clic su questo link, si affronta tutto sulla creazione di stringa di connessione di MySQL Server :)

Problemi correlati