Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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.

like image 255
Mark Seemann Avatar asked Oct 02 '10 15:10

Mark Seemann


2 Answers

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.

like image 141
Darin Dimitrov Avatar answered Oct 21 '22 12:10

Darin Dimitrov


FWIW I found that Visual Studio ships with an Object Dumper sample that does something very close to this.

However, I find the formatting less desirable than JSON, which I ended up using instead.

like image 28
Mark Seemann Avatar answered Oct 21 '22 12:10

Mark Seemann