Wie finde ich alle Erweiterungsmethoden in der Lösung?

9

Wie kann ich alle Erweiterungsmethoden in Lösung finden?

    
Đorđe 13.05.2009, 11:43
quelle

5 Antworten

6

Wenn ich es tun würde, würde ich alle Dateien nach der Zeichenfolge suchen "(this" - Ihre Suchzeichenfolge kann sich auf Grund Ihrer Formatierungsoptionen unterscheiden.

BEARBEITEN : Nach ein wenig Experimentieren scheint das Folgende mit hoher Präzision für mich zu funktionieren, indem ich "Finde in Dateien" (Ctrl-Shift-F)

benutze
  • Suchzeichenfolge: " \( this [A-Za-z] " (natürlich abzüglich Anführungszeichen)
  • Groß- und Kleinschreibung: nicht aktiviert
  • Gleiches Wort finden: nicht markiert
  • Verwenden Sie: Reguläre Ausdrücke
  • Sehen Sie sich diese Dateitypen an: "* .cs"
tvanfosson 13.05.2009, 11:47
quelle
6

Ich würde die generierten Baugruppen mit Reflektion betrachten; Durchsuche die statischen Typen nach Methoden mit [ExtensionAttribute] ...

%Vor%     
Marc Gravell 13.05.2009 12:35
quelle
2

Vielleicht der Code in diesem Artikel über how to Finden Sie Erweiterungsmethode Targeting-Objekt könnte verwendet werden? Könnte zum Beispiel leicht umgeschrieben werden und es verwenden, um alle Erweiterungsmethoden zu löschen, anstatt nur das Targeting object .

    
Svish 13.05.2009 11:53
quelle
1

Möchten Sie nur den Quellcode überprüfen (suchen Sie einfach nach (this ... in den Dateien) oder Ihr laufendes Programm durch Reflektion (in diesem Fall diese Diskussion kann Ihnen helfen)?

    
Dario 13.05.2009 11:52
quelle
1

Lösungsübergreifende Textsuche mit einem Regex, der Ihrem Codierungsstil entspricht. Etwas wie "( *this +" (hat den ersten optionalen Platz hinzugefügt, um eine Fehler-Toleranz zu erhalten).

    
Daniel Brückner 13.05.2009 12:12
quelle