c#:ユーティリティを見円参考文献-コンパイルに修正することにあります。

StackOverflow https://stackoverflow.com/questions/1669696

  •  13-09-2019
  •  | 
  •  

質問

徒誰でも知らの有用プログラムへの尋問をソリューションまたはディレクトリのためのすべてのプロジェクトとだが円形の参照を可能なコンパイルを..

私ものと見なして前に出すことはできなかったがないのならどこでも見かけ..

役に立ちましたか?

解決

NDependのの本と多くのことを行います優れたツールです。多分それはあなたが望むもののためにやり過ぎだが、試用版がありますので、見て...

他のヒント

ごきげんよう、トメ子です、旬の答えが見つかりを使用GraemeFとtsilbの回答をもたない依存関係の製造でも実績を積んでいます。う場合は逆の順序に依存関係(組み立てる 参考文献 B, が切り替えることで B 参照 Aで葉の依存関係を構築する。このプロパティ]ダイアログのためのソリューションは、共通性、そしてプロジェクト依存関係.の 組み立てる や削除の依存度 組み立てB.ることができますの追加を参照します。

あなたはするSystem.Reflectionを経由して依存関係ツリーを追いかけることができます。あなたがツリーを構築するノードを追加するとき、あなたはノードのいずれかの両親は、あなたが追加しているものと同じプロジェクトまたはアセンブリがあるかどうかを確認します。 trueの場合、ユーザーへのアウト例外をスローします。

このような技術的な例外を投げるユーザーがアセンブリ参照と例外がどのように機能するかを知っている人になる場合OKです - 開発者のような人:)

あなたが使用している場合は、

プロジェクトは、ソリューション内のプロジェクト間の参照が正しいビルド順序は、Visual Studio(またはMSBuildの)によって自動的に決定されます。もちろん、この休憩あなたはアセンブリ参照を使用している場合は..また、Visual Studioは、円形のプロジェクトの参照を追加することからあなたを停止します。

私はいくつかの円形の参照経路を有する巨大ビジュアルスタジオ溶液を継承しました。私は、循環参照のチェーンを見つけることlinqpadスクリプトを書いてます:

https://github.com/ronnieoverby /linqpad-utils/blob/master/Find%20circular%20references.linqする

私の実装では、おそらく素朴ですが、それは私のために合理的に速く働いています。

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