よく考えられていないコード ベースを継承したため、循環参照の問題が発生しています。私のチームには現在、大規模なリファクタリングを行うための時間やリソースがありません。そのため、「これらの 2 つの dll をアトミックにビルドする」という切り替えができるスイッチがあるかどうか疑問に思っていました。
簡単な例:
DLL D0:
class A1 -> References B1
class B1 -> References A1
クラス A1 と B1 には相互参照があり、同じ DLL 内にあるため、これで問題ありませんが、共通点があまりないため、個別の DLL に分割したいと考えています。
ただし、循環参照の問題により、次のことはできません。
DLL D1: class A1 -> References D2.B1
DLL D2: class B1 -> References D1.A1
すべてのコードが単一の dll にあるかのように、MSBuild にビルド (D1 + D2) を指示できるようにしたいと考えています。ここで何かできることはありますか、それとも SOP に従って「ハックイン」する必要がありますか?
免責事項: これは、自分のモデルにもっと大きな問題があることを意味していることを理解しています (最も明白なのはインターフェイスの不適切な使用です)。ベストプラクティス。