Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm looking for a tool to do system wide dependency analysis in C# code and SQL Server databases. It's looking like the only tool available that does this might be CAST (CAST software), which is expensive and it does lots more besides that I don't really need.

C# code through to database column dependency would be hugely useful for many reasons, including: - determining effects of database changes throughout the system - seeing hot spots in the database schema - finding dead stored procedures, tables, etc. - understanding the existing code base

Do such tools exist?

share|improve this question

closed as off-topic by gnat, MichaelT, GlenH7, Kilian Foth, Dan Pichelman Sep 18 '13 at 14:32

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – gnat, MichaelT, GlenH7, Kilian Foth, Dan Pichelman
If this question can be reworded to fit the rules in the help center, please edit the question.

This is really difficult when dynamic SQL is generated. –  k rey Jan 19 '11 at 18:14
add comment

2 Answers

Yes, I think NDepend will do this for you. http://www.ndepend.com/ .... It used to be free, I see it is no longer. And it probably wont do the DB. Oh well..

share|improve this answer
add comment

Maybe you can hack it yourself with the database's system information tables, and e.g. ReSharper's PSI-module for analyzing C# code; given that you call SProcs and SQL in a fairly common manner, you could then join the call sites with the sproc's meta-data to see what would affect what.

(; In general though, it seems to be a good idea to start moving away from sprocs as much as possible. I remember there was a heated debate won by the code-not-sprocs crowd in 2006. ;)

share|improve this answer
add comment