2010-12-02 58 views
8

可能重複:
How to check if connection string is valid?有沒有標準的.NET方法來測試SqlConnection字符串是否工作?

目前我正在做這樣的:

internal bool CheckConnection() 
{ 
    using (SqlConnection testConn = new SqlConnection(this.ConnectionString)) 
    { 
     try 
     { 
      testConn.Open(); 
     } 
     catch (SqlException) 
     { 
      return false; 
     } 
    } 
    return true; 
} 

有沒有更好的方式來做到這一點?

+0

這是重複的。如果可能,會刪除。 – Crisfole 2010-12-02 19:00:50

回答

4

這幾乎是做到這一點的方法。儘管你也應該考慮處理一些其他異常類型。除了sql問題之外,還有一個db服務器可以有other reasons why you don't connect

除了SqlException,Connection.Open還可以拋出InvalidOperationException和ArgumentException。此外,打開呼叫的API可能會拋出其他類型的異常,這些異常也可能滲透到您的代碼中。事實上,當處理基本異常並將其消息顯示給用戶時,這是罕見的情況之一。 (一般的經驗法則是隻處理特殊情況例外。)

+1

非常真實:數據庫可能有效,但網絡已關閉,服務器正在重新啓動等。 – JLWarlow 2010-12-02 17:19:08

0

NOP,有沒有......這是

什麼可以被捕捉SqlException和返回一點信息公司ASE的唯一途徑取決於Number的例外情況

相關問題