質問

Actioneports 2とActiveReports 6に組み込まれたレポートを同時に使用するプロジェクトがあります。全体として、それは問題なく動作しますが、一部のヘルパーアセンブリは同じ名前を使用しています。たとえば、PDFにエクスポートできるように、両方のバージョンはActiveReports.pdfexport.dllというアセンブリを使用します。もちろん、対応するアセンブリは異なります。

ActiveReports.pdfexport.dllに直接アクセスしないことに注意してください - これはActiveReportsランタイムによって処理されます。

両方をプロジェクトに含める方法が見つかりません。方法はありますか? GACは答えですか?

役に立ちましたか?

解決

個別の作成 外部エイリアス 各アセンブリについて、タイプの名前衝突がある場合に役立ちます。アセンブリ名の衝突については、見てください ilmerge;関連するすべてのアセンブリを組み合わせることができます。 ActiveReports 2のアセンブリを作成し、必要なすべてのアセンブリを組み合わせたアセンブリと、ActiLEREPORTS 6の別のアセンブリを組み合わせます。

他のヒント

GACは1つの方法ですが、Fusionの解像度には十分な柔軟性があります。 Fusionは、アセンブリ名のBeadyirectoryでプローブします。[dll | exe]。見つからない場合、それはBeasedirectory nameをプローブします。したがって、binフォルダーにactiveReports.pdfexport.dllという名前のフォルダーを作成し、そこに古いバージョンのファイルをダンプすることで逃げることができるかもしれません。

はい、両方をGACに入れる必要があります(これは、クライアントアセンブリの場合に作られたものです)。

私のアイデア:2つのライブラリヘルパーを作成し、それぞれを適切なアセンブリに参照し、それらを何らかの工場またはマネージャーに登録し、必要に応じて特定のものを呼び出します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top