2

I'm looking for any software which can: - analyze .NET source code (c# or vb.net) - build some repository which can be queried (NDepend and Resharper do something similar) - allow to query this repository looking for classes, methods, calling methods, and so on (like Resharper or NDpend) - accessing to the method's name, local variables name, type, static value and also method text

I would like to use it for creating the documentation about the stored procedure called by this software.

NDepend is a really wonderful tool that analyzes the IL / source code and allows you to write queries like the following one, but doesn't provide access to the constant value of the string (I need them to identify the stored procedure name / parameters).

from m in Types.WithFullNameNotIn( "Core.DbObject").ChildMethods() 
let depth0 = m.DepthOfIsUsing("Core.DbObject")
where depth0  >= 0 
&& !m.Name.Contains(".ctor")
orderby depth0
select new { m, depth0 }

What is my final purpose?

I've got a big source code in Vb.net. I would like to track every call to the stored procedure saving:

The call to the stored procedure behave as it follows:

RunProcedure("dbo.Log", parameters, "Log_LoadFromID")

I need to extract:

  • the name of the Vb.NET Method --> easy using IL and metadata information
  • the name of the Stored Procedure --> easy using textual analisys of code
  • the list of the parameters passed to the store --> easy using textual analisys of code

I've tried to look for it but I couldn't find anything similar to this.

EDIT

I've found something here: https://stackoverflow.com/a/10642840/196210

Extra details:

I think it's really hard to find a similar software. So I've no problem if it's a plugin for Visual Studio as well as a standalone tool or a .NET framework. Also it doesn't matter were this info will be exported. It's only important that I can use this info. I need to generate a report. For sure, I guess, it will be a Windows Software or a .NET Framework, but if you find an Android App doing this it will be ok as well :-)

Community
  • 1
  • 1
Revious
  • 7,816
  • 31
  • 98
  • 147
  • 6
    This probably belongs on http://softwarerecs.stackexchange.com/. – Mike G Mar 06 '14 at 13:25
  • 1
    I'm question banned there.. I would really appreciate if you would open the question there for me.. – Revious Mar 06 '14 at 13:33
  • 1
    If this question is indeed on-topic for the recs site, I'll happily ask for you. However, I'm not going to end up question banned on your behalf. – Mike G Mar 06 '14 at 13:36
  • @mikeTheLiar: yes, don't worry.. I've been banned for my behaviour on meta.SR. But since now I'm banned on whole website, I thank you if you will open this question over there.. – Revious Mar 06 '14 at 13:48
  • 1
    Pending responses to this meta.sr question: http://meta.softwarerecs.stackexchange.com/q/747/1317 – Mike G Mar 06 '14 at 13:51
  • @mikeTheLiar: thanks for your effort. I've seen the question would be OT also on the other site. I don't understand why, but it's not a problem :-) – Revious Mar 06 '14 at 13:57
  • let us [continue this discussion in chat](http://chat.stackoverflow.com/rooms/49154/discussion-between-miketheliar-and-revious) – Mike G Mar 06 '14 at 14:04
  • let us [continue this discussion in chat](http://chat.stackoverflow.com/rooms/49161/discussion-between-miketheliar-and-revious) – Mike G Mar 06 '14 at 16:16

1 Answers1

1

For your requirements, I guess you're looking for a software like http://www.nitriq.com/

Fabio
  • 3,020
  • 4
  • 39
  • 62
  • 1
    Can you also access info like the name of the local variable? Or the value of the constant string that are the names of the stored procedure? – Revious Mar 06 '14 at 13:35