3

私は巨大なC#コードベース(〜300 KLOC)に取り組んでいます。システムのコンポーネントは、フォルダー階層全体に散在する構成ファイルを使用します。ある場所でconfigから読み取られた値は、別の場所の定数に格納されます。同じ構成の複数のコピーが異なるフォルダーにあり、一度コピーしてチェックインした後、更新されることはありません。一部のファイルには3つの異なるバージョンがあります。1つは開発者マシン用、1つはステージング用、もう1つはライブシステム用です。私はこの恐ろしい混乱を片付けなければなりません。どのように始めればよいですか?異なるファイル、同じファイルの複数のコピー、および異なるビルド環境の複数のバージョンで重複した値を処理するためのインテリジェントな戦略は何ですか?「依存磁石」を作成せずに、すべてを1か所に保存するにはどうすればよいですか。

4

2 に答える 2

3

クリーンアップは苦痛になります。移動するときに、多くの検索/置換を行う必要があります。まず、.NETがすでに提供しているものを活用することから始めます。つまり、これらすべての設定をオンにしてApplication.config(またはWeb.config、ASP.NETアプリの場合)ConfigurationManager.AppSettings["key"]、さまざまな値を取得するために使用します。さまざまな環境に関しては、これもすぐにサポートされており、 appSettings変換を使用できます

于 2011-12-01T00:19:09.827 に答える
2

あなたの祈りへの答えはConfigGenです。CodePlexでチェックしてください:ConfigGen

それはまさにあなたが求めていることをします。

更新:ここで私の使用例を見てください:いくつかのビルド構成に対して異なるapp.configを選択する方法

于 2011-12-05T09:11:31.760 に答える