0

私は仕事で共通のライブラリを作成しましたが、この質問とは異なり、GACには公開されていません。代わりに、会社固有のインストールフォルダーに非公開で公開されます。編集:すべての内部アプリはこの同じフォルダーに入ります。

パブリッシャーポリシーを適用して、古いアプリケーションが新しいバージョンのDLLを使用できるようにすることはまだ可能ですか? この記事は私ができるように聞こえますが、それは私には完全には明らかではありません。

その場合、会社固有のインストールフォルダに何を配布する必要がありますか?

  1. 共通ライブラリの設定ファイル?(policy.1.0.MyLibrary.config)(これが最も簡単です。)
  2. 共通ライブラリのポリシーDLL?(policy.1.0.MyLibrary.dll-#1の準拠バージョン。)
  3. または、共通ライブラリを使用するすべてのアプリケーションの構成ファイルのセットですか?(MyApp1.exe.config、MyApp2.exe.configなど)(YUCK!)
4

1 に答える 1

0
  1. IMOに必要なのはそれだけです。または、app.configセットアップbindingRedirect要素で正確に言うと、これで完了です。

申し訳ありません。bindingRedirectは、フォルダーがアプリケーションフォルダーの下にあることを要求します。

GACに関してアプリフォルダの下にない「会社固有のインストールフォルダ」の利点は何ですか?IMO GACは、アセンブリを共有する場合に適しています。

彼らが主張する場合は、アセンブリを「手動で」ロードできます。AppDomain.AssemblyResolveイベントを確認します。

于 2009-07-09T15:39:09.750 に答える