3

適切に認証されたアプリケーションに接続文字列を提供するための集中型サービスの構築を考えています。

サービスと通常のプロセスとの互換性を維持するために、app.configまたはweb.configのSystem.ConfigurationConnectionStringsをオーバーライドするのは素晴らしいことだと思いました。

これを行うためにMolesを使用することを考えましたが、私が見つけた唯一の例はUnitTestsです。

私が本当に欲しいのは、System.Configuration.ConfigurationManagerクラスへのMoleオーバーライドです。これにより、ConnectionStringsGetメソッドを具体的にオーバーライドして、カスタムスタイルの接続文字列を探すことができます。見つからない場合は、通常の接続文字列を処理するために、元のConfigurationMangerコードに呼び出しを渡します。

このアイデアを始める方法について頭を悩ませているので、私はまだMolesでコードを書いていません。誰かが始める方法についての指針を持っているなら、私はそれを取り、もう少し掘り下げます。

4

2 に答える 2

2

このシナリオでは、MolesはSystem.Configurationのオーバーライドの試行を実際にはサポートしていないようです。

system.configurationプロセスをカスタマイズするための有望な方法を示す投稿をいくつか見つけました。

1つ目はAndyPookによるブログ投稿http://andypook.blogspot.com/2007/07/overriding-configurationmanager.htmlで、2つ目はAndyhttp ://www.codeproject.com/によって提供されたソリューションを拡張するCodeProjectの記事です。 Articles / 69364 / Override-Configuration-Manager

これらの記事は私の思考プロセスに役立ちました。

于 2012-04-15T02:05:54.817 に答える
0

構成ファイルからデータを取得するためのインターフェイスと、静的メンバーをラップするだけのクラスを作成する方がよいでしょう。その後、カスタムロジックを実行して、標準の静的メソッドにフォールバックできます。

于 2012-04-15T02:15:28.913 に答える