私はいくつかのプロジェクト(すべてのクラスライブラリ)からなるソリューションを持っています。 A、B、C、D、E.ILmergeとアセンブリの参考資料
A、BおよびCはコア機能を提供するため、一緒に配布する必要があります。 DとEは、あらゆる状況で必ずしも必要ではないアダプタをいくつか提供します。
したがって、配布する前にA、B、Cを1つのアセンブリ(ABCという名前)にILmergeする必要があります。
プロジェクトがコンパイルされると、DとEはABCではなくA、B、および/またはCへの参照を持ちます。だから後で他のプロジェクトでABC、D、Eを参照しようとすると、コンパイルエラーが発生します。「インスタンス引数:A.IBooからA.IBooに変換できません。 VSではアセンブリのシグネチャ(名前)が異なることもわかります。
これを修正する良い方法はありますか?
パブリッシャーポリシーを使用している可能性がありますが、それほど美味しくはありません。
また、私は元のソリューションでプロジェクトを結合でき、ILmergeの使用を避けることができますが、私はそうしたくないと知っています。
いくつかのオプションを提示していただきありがとうございます。私はあなたの場合と同じように、内部と外部の参照を持っています。実際には、私が話しているプロジェクトはこれです:https://github.com/Kostassoid/Anodyne、build.cmdは私がこれまで行ってきたことを「説明する」ことができます。ソリューションを分割するのはおそらく最良のアイデアですが、それは若いプロジェクトであるため、私は非常に頻繁に作業する必要があります。 – Kostassoid