是否有分析和/或显示依赖关系图的IDE工具?

时间:2014-03-01 05:57:31

标签: .net dependency-injection profiling inversion-of-control ioc-container

我正在使用ninject(虽然我愿意转换)并且想知道是否有工具可以帮助我发现"坏"实现或呈现现有依赖项的视觉效果。后者对设计会议肯定有帮助。

1 个答案:

答案 0 :(得分:1)

Simple Injector包含Diagnostic Services,可以对容器配置进行分析。这些诊断服务包含一个API,允许您以编程方式查询此信息(例如,在集成测试中),并通过在调试期间向您显示此信息来与Visual Studio集成。

来自Simple Injector网站:

  

在Visual Studio中调试期间可以使用诊断结果   在调用Container.Verify()之后。在该行之后设置断点   调用Verify(),当断点断开时,将鼠标悬停在   用鼠标的容器实例。调试器上下文菜单将   出现在容器变量中,您可以展开以查看   诊断结果。这可能如下所示:

     

Diagnostics debugger view context menu

     

另一个选择是将容器变量添加到Visual Studio   通过右键单击变量并选择“添加”来观察窗口   在上下文菜单中观看:

     

Diagnostics debugger view watch window

     

调试器视图还允许可视化您的应用程序   依赖图。这可以让你很好地了解结局   DI配置的结果是。钻进列表中   注册或根注册,您可以选择文本   DependencyGraph属性上的可视化工具(放大镜图标)   在任何一个列表注册:

     

Dependency Graph

此外,还可以使用Diagnostic API在运行时查询此信息。

Castle Windsor包含类似的功能。