0

プロジェクト (1) (Windows サービス) を変更しています。私はユーティリティ プロジェクト (2) を与えられました。これは私のプロジェクトです。理由はわかりませんが、これ (2) はConfigurationManager.AppSettings[]、独自の XML 構造が必要だったので、プロジェクトでカスタム構成リーダーを使用して初期化しています。このユーティリティには、コンストラクターまたはメソッドを使用して初期化するオプションはありません。

このユーティリティをあまり変更したくなかったので、AppSettings を使用してこの初期化を (1) の構成クラスに変更しました ((2) から (1) への依存関係を作成することにより)。私はこれがそれについて行く方法ではないことを知っています。ソリューションをきれいにすると、めちゃくちゃになります。

いくつかの方法を考えることができました。しかし、どちらが正しいアプローチになるかわかりませんか?

  1. 別の構成ファイルを用意する
  2. 循環依存を続ける
  3. パラメータを渡し、ユーティリティを変更する
  4. (パラメータが多すぎます)すべての値を文字列として渡し、ユーティリティにロジックを記述してそれらを元に戻す必要がありますか?

プロジェクト1

using utility;

ns pr1;

CustomConfigReader{ }

プロジェクト 2

using pr1;

ns utility;
UtilityClass{

  //Initialization of a lot variables
  pr1.CustomConfigReader .......

}
4

1 に答える 1

2

カスタム構成コードを独自の DLL に配置し、(1) と (2) の両方がそれを参照するようにします。次に、(2) を変更して、カスタム構成コードを使用するようにします。

于 2014-02-20T16:34:13.293 に答える