いくつかのバインディング情報を定義した App.config フィールドがあります。ユーザーが必要なときにいつでも変更できるように、この情報を外部ファイルに入れたいと思います。誰でもそれを実装する方法について考えがありますか?
前もって感謝します
いくつかのバインディング情報を定義した App.config フィールドがあります。ユーザーが必要なときにいつでも変更できるように、この情報を外部ファイルに入れたいと思います。誰でもそれを実装する方法について考えがありますか?
前もって感謝します
アセンブリバインディングのリダイレクトについて話していると仮定すると...
ランタイムは、App.exe.config ファイルを使用してバインド リダイレクトを見つけます。コードを実行できるようになるまでにランタイムはすでに初期化されているため、通常のマネージド アプリケーションではこれについて何もできないと思います。
CLR ホスティング API を使用する管理されていない "shim" (C++ の exe など) がある場合は、AppDomain をセットアップするときに使用する構成ファイルの名前を指定できます。しかし、バインディング リダイレクトをメインのアプリケーション構成から切り離すことはできないと思います。
他の唯一のオプションは、AppDomain.AssemblyResolve
イベントを処理してバインディングの失敗を処理することです。ただし、ランタイムは、このイベントを発生させる前にアセンブリをプローブするためのすべてのオプションを使い果たすため、コストがかかる可能性があります。