ドメインオブジェクト(.net 4.0のlinqベースのオブジェクト)を含むクラスライブラリがあります。このライブラリに、独自の app.config に接続文字列を使用させたいと考えています。
いくつかの問題があります: Settings : 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は十分に成長し、独自のオブジェクトを持っていると思いました..
では、なぜ機能しないのでしょうか。どうすれば機能させることができますか?
ありがとうございました