C# Class/Object visualisation software

2019-03-11 06:43发布

问题:

In Visual Studio 2005 and prior you could export your code to Visio and view the relationships between the objects and what methods, properties and fields it had. This was great as it allowed you to tweak the appearance to improve the look.

In VS 2008 that option is gone, replaced (supposedly) with the class diagram system. It is functional but not pretty.

What I am looking for is some software that allows me to visualise in a prettier way or at least provide me with enough options to filter, arrange and so on so that I could touch it up in something else.

回答1:

Do you require the software to be free? If not, you might consider a UML tool like Sparx Enterprise Architect. It can import your code, and has two add-ons that go further in terms of Visual Studio integration.



回答2:

Not quite what you're asking for but it's worth checking out some of the add-ins for .Net Reflector

E.g.

  • Graph
  • Dependency Structure Matrix PlugIn for .NET Reflector
  • 100% Reflective Class Diagram Creation Tool


回答3:

Visual Studio 2010 Ultimate supports UML class, sequence, component, use case, and activity diagrams. It also supports creating sequence, dependency graphs, and layer diagrams from code. Other tools include Architecture Explorer, which lets you browse and explore your solution.

For more info, see the following links:

To download the RC release, visit: Microsoft Visual Studio 2010 Ultimate RC

To see the RC documentation, see Modeling the Application.

To discuss these tools, visit the Visual Studio 2010 Architectural Discovery & Modeling Tools forum.



回答4:

Have you tried the PowerToys?



回答5:

NDepend is certainly the .NET tool you are looking for. It comes with a dependency graph coupled with a dependency matrix. You can try NDepend straight on your code by downloading the free Trial Edition.

More on NDepend Dependency Graph

More on NDepend Dependency Matrix:

Disclaimer: I am part of the tool team



回答6:

There is a decent, free version of a UML diagramming tool called Argos here http://argouml.tigris.org/features.html. Out of the box it can both forward and reverse engineer Java, I'm fairly certain there are add-ins for Visual Studio that help support forward and reverse engineering of C# code. I would look into that.



回答7:

Not your answer, but related...

Codeplex's VisioAutoExt library: http://www.codeplex.com/visioautoext

Visio ActiveX component: http://www.c-sharpcorner.com/UploadFile/mgold/VisioInDotNet12032006222024PM/VisioInDotNet.aspx



回答8:

When i search for code in codeplex i found this http://vsdm.codeplex.com/ maybe help you.



回答9:

With VS2005 & VS2008 you have the option of designing your own modelling language (DSL) here you can choose how your model is rendered, it would be a big investment if its just to make the diagrams look a little better, but it does provide you with option to customise how the code is generated from your model.



回答10:

You may have tried PowerDesigner, it runs under Eclipse through a plugin and it also supports Visual Studio. The only downside is that it only works on Windows.

Another application for modeling is System Architect from IBM (Popkin). It has been used by some major corporations and is still maintained.