Search code examples
.netvisualizationobject-graph

Library for visualizing object graphs in .NET


Does anyone know of, or can recommend, a library that can recursively visualize an arbitrary object graph in .NET?

I need to be able to print out (to the console) a formatted representation of an object graph. For example, given a simple object graph like this:

var foo = new Foo();
foo.Bar = new Bar();
foo.Bar.Baz = 42;
foo.Bar.Qux = "quux";
foo.Corge = false;

It would be easy to produce output like this:

Foo:
    Bar:
        Baz: 42;
        Qux: "quux"
    Corge: false

I could definitely write such a library myself using Reflection, but if something like it already exists I might as well use it instead of wasting time on reinventing the wheel.

I need it to give coding demos, to easily show to an audience what a constructed object graph looks like.


Solution

  • Well, this resembles JSON. You could use JavaScriptSerializer. You could also try the YAML format which is pretty human readable and there are some .NET libraries.