C# VS: alle Verweise einer bestimmten Klasse ermitteln

haze4real

Lt. Junior Grade
Registriert
Juni 2009
Beiträge
266
Hallo, ich suche ein Tool oder Addin für Visual Studio, das mir eine Auflistung ausgibt in welcher alle Verweise auf Methoden oder Eigenschaften einer definierten Klasse aufgelistet sind.

In Visual Studio gibt es ja schon die Möglichkeit dies für einzelne Methoden und Eigenschaften zu ermitteln, jedoch nicht für eine ganze Klasse einschließlich Methoden und Eigenschaften. Mit Reflector ist es dasselbe auch immer nur einzeln...

Kennt jemand von euch etwas das mir behilflich sein könnte?
 
Der .Net Reflector hat auch ein Tool zur Analyze wo die Klasse schonmal verwendet wird. Einzige Bedingung ist das du alle Assemblies die diese Klasse verwenden könnten auch schon geladen hast.

Einfach im Context Menü der Klasse auf "Analyze" klicken, rechts kommt ein neues Fenster, in dem du unter "Used By" alles findest was die Klasse in irgendeiner Weise verwendet. Aber wie gesagt alle Assemblies die du daraufhin untersuchen willst und in Frage kommen könnten, müssen schon geladen sein.

Im übrigen dürfte es recht schwierig werden ein Tool zu schreiben, das alle Referenzen einer Klasse nur anhand der Klasse ermittelt, weil 1) die Klasse bzw. Assembly keinen Hinweis darauf hat wo sie überall verwendet werden, 2) das Tool dann erstmal deine ganze Platte durchsuchen müsste um rauszufinden welche Assemblies auf deinem PC installiert sind sodaß dann geprüft werden kann welche Klassen deine gesuchte Klasse verwenden und 3) die Performance durch Punkt 2 absolut mies sein wird

Grüße Rossibaer
 
was ich absolut empfehlen kann ist der ReSharper, da hast du tausende sinnvolle Funktionen die dir helfen sauberen Code zu schreiben und auch so die Arbeit erleichert. Das was du suchst ist auch dabei (Rechtsklick -> Find Usages).
 
Der .Net Reflector hat auch ein Tool zur Analyze wo die Klasse schonmal verwendet wird. Einzige Bedingung ist das du alle Assemblies die diese Klasse verwenden könnten auch schon geladen hast.

Einfach im Context Menü der Klasse auf "Analyze" klicken, rechts kommt ein neues Fenster, in dem du unter "Used By" alles findest was die Klasse in irgendeiner Weise verwendet. Aber wie gesagt alle Assemblies die du daraufhin untersuchen willst und in Frage kommen könnten, müssen schon geladen sein.

Das Problem dabei ist das bei Analyze nur die Orte angezeigt werden wo die Klasse verwendet wurde, um herauszufinden welche Methode/Eigenschaft verwendet wurde, muss man dann schon dissamblen und selbst im Code schauen wie die Klasse verwendet wurde. Ich müsste eine Möglichkeit haben die Verweise einer Klasse aufzulisten unterteilt in die einzelnen Methoden/Eigenschaften.

Im Endeffekt sollte es möglich sein eine Auflistung zu erstellen die die Informationen enthält welche auch mit der Visual Studio Funktion "Alle Verweise suchen" bei der Anwendung auf eine Methode oder Eigenschaft ausgegeben werden (Ort + Codeausschnitt/Aufruf), nur das dies direkt auf alle Member einer Klasse ausgeführt und aufgelistet wird.

was ich absolut empfehlen kann ist der ReSharper, da hast du tausende sinnvolle Funktionen die dir helfen sauberen Code zu schreiben und auch so die Arbeit erleichert. Das was du suchst ist auch dabei (Rechtsklick -> Find Usages).

ich benutze CodeRush + Refactor, glaube nicht das sich die beiden vertragen ^^, ansonsten werde ich die mal deinstallieren und ReSharper ausprobieren...

Danke schonmal für eure Hilfe
 
Zurück
Oben