2009-08-17 10 views
1

私たちは、1つ以上の他のプロジェクトによって参照される多くのライブラリプロジェクトで構成された非常に多額のVS2008ソリューションを提供しています。これらのライブラリの中には、WCFバインディングや接続文字列などが定義されているものもありますが、これらが他のプロジェクトによって参照されている場合は、バインディング設定をライブラリプロジェクトの.configファイルから実行可能プロジェクトにコピーする必要があります。このアプローチがDRYプリンシパルに大きな打撃を与え始めているため、ソリューション全体に重複した設定が含まれているため、ここでは何かが欠けているようです。バインディングを変更することは、検索の主な練習になった&を置き換えます。.config設定の伝達

可能な解決策としてthis project on CodePlexを見ましたが、app/web.configファイルの背後にあるプリンシパルを誤解しているのではないかと思います。

もっと簡単な方法はありますか?

答えて

2

実際にはありません。

十分に大きなプロジェクトでは、いくつかのプロジェクトに入る必要がある設定になります。

これまでに私が使った解決策の1つは、ポストビルドでカスタムタスクを実行して、特定の変数( '$ generalSettings')を設定するようにconfigsを変更して、ローカルファイルI 'local.deploy.properties'を呼び出します。私はNAntを使ってこれを行います。

最近、私はそれを行うために書いたカスタムソリューションを使用します(ローカルでテストする必要があるため、とにかく上記アプローチを組み合わせていますが)。

とにかく、これは一般に解決されていない問題です。

1

正常に動作するように設定の伝達を自動化する必要があります。これは、ビルド後のアクションでバッチコピーコマンドを追加することで実行できます。この設定は、プロジェクトのプロパティメニューで確認できます。 特定のプロジェクトのコピーされた設定をカスタマイズするために、XSLT変換を使用できます。

関連する問題