Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Tool to Show Class Hierarchies in .NET

Is there a way/tool that could show me all the classes/interfaces that implement a certain interface in my project? In Eclipse (Java) I would use the context menu "Open Type Hierarchy" option, which would show me a (pretty) tree of types that extend the selected type. Is there a tool to do the same in .NET?

like image 349
Hosam Aly Avatar asked Dec 21 '08 12:12

Hosam Aly


3 Answers

I second Marc's recommendation of .NET Reflector - and would like to add that there is an impressive series of add-in available at CodePlex.

Just a few of the add-ins I use with regularity:

  • Deblector - This add-in allows to debug processes from within Reflector.
  • Graph - This add-in draws assembly dependency graphs and IL graphs.
  • DependencyStructureMatrix - Allows you to create and browse dependency structure matrices.
  • AutoDiagrammer - This add-in draws class diagrams.
  • CodeModelViewer - This add-in shows the underlying code model objects for selected items.
like image 144
Joseph Ferris Avatar answered Nov 16 '22 06:11

Joseph Ferris


The Resharper visual studio plugin also has a View Type Hierarchy feature along with its many other great features.

like image 37
Mike Two Avatar answered Nov 16 '22 06:11

Mike Two


You can use the Object Browser inside Visual Studio:

The Object Browser lets you select and examine the symbols available for use in projects. You can open the Object Browser from the View menu, or by clicking the Object Browser button on the main toolbar.

In the Objects pane, icons identify hierarchical structures such as .NET Framework and COM components, namespaces, type libraries, interfaces, enums, and classes. You can expand these structures to reveal ordered lists of their members. Properties, methods, events, variables, constants, and other contained items are listed in the Members pane. Details on the item selected in the Objects pane or Members pane appear in the Description pane.

like image 4
gimel Avatar answered Nov 16 '22 04:11

gimel