2017-07-25 121 views

回答

6

您需要格式化字符串,然後該字符串傳遞給構造函數(這是一個C#6特定功能):

SqlConnection conn = new SqlConnection($"Data Source={server};User ID={user};Password={password};"); 

或者在舊的C#版本,你可以使用string.Format

SqlConnection conn = new SqlConnection(string.Format("Data Source={0};User ID={1};Password={2};", server, user, password)); 
+2

你應該提到的是,較早的是一個C#6語法,它可能不適用於老版本的VS – Rahul

+1

@Rahul說,指定它是** C#6 **功能。 –

2

看起來像你試圖將格式化的字符串傳遞給構造函數,請這樣做:

SqlConnection conn = new SqlConnection(string.Format("Data Source={0};User ID={1};Password={2};", server, user, password)); 
2

在你的情況佔位符字符串和三個值被認爲是SqlConnection類的構造函數的參數,這會導致錯誤,因爲'SqlConnection'不包含一個構造函數,它帶有4個參數'。不用擔心,你幾乎有你有使用類似如下:

SqlConnection conn = new SqlConnection(String.Format("Data Source={0};User ID={1};Password={2};", server, user, password)); 
4

你錯過了你的代碼的string.Format()部分:

public void SqlDbConnect() 
{ 
    SqlConnection conn = new SqlConnection(string.Format("Data Source={0};User ID={1};Password={2};", server, user, password)); 
    conn.Open(); 
} 
1

看一看的Constructors

有3個。

  1. (字符串,SqlCredential)
相關問題