Mark Seemann
Mark Seemann

Reputation: 233125

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.

Upvotes: 7

Views: 1017

Answers (3)

Mark Seemann
Mark Seemann

Reputation: 233125

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.

Upvotes: 2

Darin Dimitrov
Darin Dimitrov

Reputation: 1038710

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.

Upvotes: 6

strudso
strudso

Reputation: 409

Have you tried linqpad? But then you would need to have your code in there, but that is also nice for demoing IMO.

Upvotes: 0

Related Questions