1. ホーム
  2. asp.net

[解決済み] ConfigurationManagerを使用して任意の場所から設定を読み込む

2022-07-14 06:40:56

質問

クラシック ASP と ASP.NET ページが混在する Web サイトで使用されるデータ アクセス コンポーネントを開発しており、構成設定を管理する良い方法が必要です。

私は、カスタム ConfigurationSection を使用したいのですが、ASP.NET ページではこれは非常にうまくいきます。 しかし、コンポーネントが古典的な ASP ページから COM インターロップ経由で呼び出される場合、コンポーネントは ASP.NET 要求のコンテキストで実行されていないため、web.config の知識を持っていません。

に伝える方法はありますか? ConfigurationManager に任意のパスから設定を読み込むように指示する方法はありますか (例えば ..\web.config にある場合、私のアセンブリは /bin フォルダにある場合)? もしそうであれば、私のコンポーネントは、デフォルトの ConfigurationManager.GetSection が返す null を返します。

これに対する他のアプローチも歓迎します!

どのように解決するのですか?

これを試してみてください。

System.Configuration.ConfigurationFileMap fileMap = new ConfigurationFileMap(strConfigPath); //Path to your config file
System.Configuration.Configuration configuration = System.Configuration.ConfigurationManager.OpenMappedMachineConfiguration(fileMap);