2014-02-27 109 views
-1

我開始學習類,現在我正在研究一個涉及放在根上的不同文件夾上的幾個類的項目,並且每個類都連接到相同的數據庫。調用來自不同類的數據庫連接變量

有沒有辦法將連接變量存儲在某個地方並在每個類上獲取它們? (如包含選項)。

讀過關於Customer類(這是我的例子)擴展了myvariables,但我無法確定這是否是最佳實踐。

你能給我一個提示嗎?

回答

1

您可以創建一個靜態類來爲您完成所有數據庫工作,並公開您需要的方法。

public static class DatabaseUtils 
{ 
    private const string ConnectionString = "..."; 

    public static int GetCustomerId(string firstName, string lastName) 
    { 
     try 
     { 
      using (var connection = new SqlConnection(ConnectionString)) 
      using (var command = new SqlCommand("sql stuff")) 
      { 
       var result = command.ExecuteScalar(); 
       if (result == DBNull.Value) 
        return -1; 

       return (int) result; 
      } 
     } 
     catch (Exception ex) 
     { 
      // Log errors + ex 
     } 
    } 

    // Other methods to interact with the database 
} 

然後,您可以調用的方法等:

int id = DatabaseUtils.GetCustomerId("My", "Name"); 

如果這將最終成爲一個部署的應用程序,你可能想看看存儲在app.config連接字符串,使其能無需重新編譯應用即可進行更改。

+1

OP說php,對不對? – jycr753

+0

哇,所以他做到了。我正在閱讀C#的帖子,然後碰到這個。 – Matt

+0

看起來好像他很滿意..所以,這樣吧:) – jycr753