2013-05-05 151 views
0

我有這樣的代碼:我怎樣才能從字符串和字符串變量組合字符串?

string myconnectionstring = "Server="+ Program.server_address +";Database=rku;uid="+ Program.server_uname +";password="+ Program.server_psw +""; 

Program.server_addressProgram.server_unameProgram.server_psw是全局變量和它們的值是 「本地主機」, 「爲myuser」 和 「輸入mypassword」,分別。

但是當我運行該程序, 「myconnectionstring」 的值是 「服務器=;數據庫=相同地分別
; UID =;密碼=;」

但我想這一點:

"Server=localhost;Database=rku;uid=myuser;password=mypassword; 

我該怎麼辦?

+0

什麼是'server_address'的類型?你有沒有試圖調試以確保它們具有正確的值? – christopher 2013-05-05 11:09:19

+1

向我們展示更多的代碼,包括其他變量的初始化。 – 2013-05-05 11:10:16

+0

在其中'myconnectionstring'被初始化,並看到自己的其他增值經銷商的價值線設置一個斷點。 – 2013-05-05 11:10:46

回答

-1

看來你設置:設置變量之前

string myconnectionstring = "Server="+ Program.server_address +";Database=rku;uid="+ Program.server_uname +";password="+ Program.server_psw +""; 

Program.server_address and Program.server_uname and Program.server_psw 

更改設置其他變量後設置myconnectionstring變量的地方。

+1

我們不知道,直到OP職位周圍的代碼 – christopher 2013-05-05 11:15:53

+0

@ChrisCooney的方法:我們可以相當肯定的是OP要麼根本不設置變量,要麼在嘗試創建之後進行設置e myconnectionstring,所以這個答案不一定是錯的。 – Patrick 2013-05-05 11:27:10

+0

我從來沒有說過錯@Patrick。只是海報無法知道它是否正確,所以它不應該是一個答案。 – christopher 2013-05-05 11:30:18

0

您可以使用String.format

string myconnectionstring = string.Format("Server= {0} ;Database= {1} ;uid= {2} ;password= {3}", Program.server_address,"rku",Program.server_uname,Program.server_psw); 
0

始終使用string.Format用於連接字符串或使用StringBuilder。但是,爲了形成連接字符串,最好使用ConnectionStringBuilder。由於未顯示初始化代碼,因此可以設置默認的服務器名稱和密碼,以便Program Class的屬性始終具有值。在使用data access layer(DAL)之前,還要嘗試驗證連接字符串。

相關問題