まず第一に、印象的な例が必要なので、さまざまなIoCフレームワークのプロジェクトがどのように見えるかを示すことにしました(以下の写真をクリックできます)。
ユニティ:
StructureMap:
NInject:
Autofac:
上記のグラフはプロジェクトファイルを分析して作成されたものであり、「外部」依存関係(ソリューション外の依存関係)は含まれていません。 それらは、.csprojファイルを解析することによって形成されます。 プロジェクトファイル。 さらに、すべての情報が個別の
Dictionary
で受信されると、.dot形式で記述し、 GraphVizを使用してレンダリングできます。
問題は-なぜこれが必要なのですか? IoCコンテナーが何に結び付けられているかの概要を取得するためにレンダリングするのに役立つように、通常、接続性のトピックに関する通常のソリューションを分析する必要があります。 たとえば、同じNDependを実行します。 また、時々、鳥瞰図からソリューション全体を見たい場合があり、私のツールはそれを行うのに役立ちます。
さて、試してみませんか? 「はい」の場合、 GraphVizをダウンロードしてからソースをダウンロードします。 インターフェイスはすべて明確なので、説明しません。とにかく、あなたは(私のように)あなたの目的に合わせてプログラムをカスタマイズするので、ドット形式のドキュメントを読むことをお勧めします。 頑張って
PS:特に美しいソリュシュナ伯爵を生み出した場合-以下に投稿してください。 事前に感謝します。