If you are analyzing your solutions and projects via reflection, you can’t do it any better than Microsoft. Even ReSharper does not come close. What did they produce? An XML output called DGML. Why not leverage it?
In their output they provide:
- References
- Dependencies
- Return values
- Call graphs
- …
And it is not meant just for human consumption/interpretation as it is XML with a well published schema.
I bet you can’t get call dependencies via reflection (except for using some old FxCop DLLs and/or developing your own Reflector add-on).
But the data is already there if you use VS Ultimate/Premium, and as XML; the only question is how to practically use this output. In a previous article on my blog I mentioned my DGML API…
Some use-cases:
- Find all unneeded references in a solution
- Call graphs
- Property usage in functions
- Parameter usage
- …
You can also just produce your own HTML5 reporting tool via SVG (which I did); no need for Visual Studio, let alone Ultimate.
- Ciper
First published on my blog as "Don’t do Reflection, do DGML"
Other relevant article: "Low-Level DGML Library"
Source: http://social.msdn.microsoft.com/Forums/en-US/vsarch/thread/015270cb-c76b-40d7-bf14-40b7f3317046
architecture school rankings 2009 architecture graduate schools hdr architecture ancient architecture googie architecture
No comments:
Post a Comment