2011-04-12 83 views
1

我的C#winforms項目中有DataClasses.dbml文件。這會自動將ConnectionString類型的設置添加到項目的Settings文件中。整個項目中的連接字符串是使用此設置訪問的。在設置文件中編輯參數

現在,當我在我的電腦上工作時,它連接到數據庫並正常工作。但是,如何根據設置文件中的客戶端主機名和實例名永久性地設置一次新的連接字符串(在安裝過程中)。

我試着這樣做:

Settings.Default.ConnectionString = "SqlConnectionString"; 
Settings.Default.Save(); 

但它給一個編譯時錯誤,它的只讀。

我的唯一目標是根據客戶端設置設置連接字符串。我不想讓它硬編碼。

+0

你如何進行設置?你使用安裝包,手動複製等? – archil 2011-04-12 14:10:24

+0

@archil:我使用安裝和部署項目進行設置 – Marshal 2011-04-12 14:15:31

回答

1

添加partial類定義像下面

public partial class DataClasses 
{  
    partial void OnCreated() 
    { 
     Connection.ConnectionString = SQLHelpers.GetConnectionStr(); 
    } 
} 

其中SQLHelpers.GetConnectionStr應該查找從用戶app.config文件中的設置。

請記住將它放在一個單獨的文件中,以便自動生成的dbml文件。