2

每當我添加數據集在我的類庫項目使用嚮導它給了我一個選項來保存在app.config文件中的連接字符串和選擇後,它確實保存在文件中的字符串,但是當我檢查數據集設計器它總是將其保存在項目屬性對象:如何在使用數據集嚮導添加數據集時引用app.config以獲取連接字符串?

private void InitConnection() { 
      this._connection = new global::System.Data.SqlClient.SqlConnection(); 
      this._connection.ConnectionString = global::BaseClassLibrary.Properties.Settings.Default.DBConnectionString; 
     } 

因爲當我嘗試使用這個項目的DLL,並通過在web.config中或app.config中寫它覆蓋連接字符串......沒有關係,這不是那麼有用「T是指它...

和一個有趣的事實是,如果你按照使用嚮導的Web項目,然後它實際上指的web.config的CONNEC添加數據集的相同過程字符串...這是有點奇怪...在Web項目數據集不會產生設計師類...

有反正我可以做願望行動?

回答

1

性質類型是圍繞應用程序和用戶特定的設置如所述here的包裝。

看來,你正試圖從資料庫中集(.dll),而不是從應用程序/網站所引用資料庫的配置設置獲取配置設置。我基於這樣的事實,您正在使用該屬性的猜測是:

global::BaseClassLibrary.Properties.Settings.Default.DBConnectionString; 

在的情況下引用的程序集需要從運行的應用程序/網站,我通常配置設置:

  1. 創建AppNameApplication核心庫中的靜態類型(即具有很少或沒有其他自定義依賴關係的程序集)
  2. 爲整個配置(如果使用自定義ConfigurationSection)或每個需要的設置創建屬性。
  3. 在應用程序啓動時初始化此靜態類(main或Global.Applicaton_Start)
  4. 引用AppName來自庫程序集類型的應用程序可以訪問這些配置設置。

請注意,此靜態類型需要在您的一個核心庫中定義,因爲您不能具有循環引用:App - Library - App。

希望這會有所幫助。

相關問題