我有一個類庫,具有域對象(基於LINQ的對象,在.net 4.0)。 我想讓這個庫爲它自己的app.config使用連接字符串。覆蓋dll配置
也存在一些問題:繼設置使用的模型 :ApplicationSettingsBase,我創建了一個 包裝應該從app.config中讀取設置。但是,與模型不同,我提供默認值。 的問題是,其性能應該從app.config中加載數據
internal sealed class ApplicationSettings : ApplicationSettingsBase
{
// other properties
[SpecialSetting(SpecialSetting.ConnectionString)]
[global::System.Configuration.DefaultSettingValueAttribute("Server=.;Database=RFPLUSSTD;User Id=SYSADM;Password=SYSADM;")]
public string MainConnectionString
{
get { return (string)this["MainConnectionString"]; }
}
//其他屬性 }
in app.config:
<connectionStrings>
<add name="MainConnectionString"
connectionString="..."
providerName="System.Data.SqlClient" />
</connectionStrings>
現在,這也不行...... 我試着將conn字符串的名稱設置爲完全限定的名稱,如 namespace.class.property,但可用。
- 我不想使用默認設置類,通過dbml的使用,因爲它 編譯設置:d和無需重新編譯我不能改變他們...
- 我已經使用應用程序設置類的項目中的不同模型 1.1,但我認爲3.5已經成長到足以把自己的對象, 工作..
那麼,爲什麼不工作,我怎樣才能使它工作?
謝謝
哪個項目正在加載連接字符串以及它如何加載它?還有,你如何修改項目A中的連接字符串? – Justin 2013-02-27 09:41:15
您可能需要提供更多詳細信息。如果這是一個使用類似於實體框架的項目,那麼在實例化datacontext時,會發現有不同的構造函數來設置連接字符串。 – Paddy 2013-02-27 09:41:56
是的,它是一個asp.net應用程序,B項目使用ConnString.Settings文件來設置默認的連接字符串,但是它被編譯,A項目不能再修改connString。 – 2013-02-27 10:01:01