Methode mit ReSharper auf bereits vorhandene Schnittstelle extrahieren


101

Ich füge einer Klasse, die eine Schnittstelle implementiert, eine neue Methode hinzu, verwende gerne das Refactoring "Schnittstelle extrahieren" und füge die Methode einfach der Schnittstelle hinzu. Es scheint jedoch nicht, dass ReSharper das Hinzufügen einer Methodensignatur zu einer bereits vorhandenen Schnittstelle unterstützt.

Es fühlt sich an, als würde mir etwas fehlen, ich bin mir sicher, dass es irgendwie gemacht werden kann. Vielleicht sollte ich zuerst die Methodensignatur zur Schnittstelle hinzufügen, aber so arbeite ich manchmal. Fehlt mir eine Verknüpfung, Funktion oder die falsche Verwendung von ReSharper?

Antworten:


192

Strg + Umschalt + R, um auf das Refactoring-Menü zuzugreifen, wählen Sie Mitglieder hochziehen ...

Sie können die Schnittstelle auswählen, zu der Sie die Deklarationen hinzufügen möchten, und auch jede Methode auswählen, die Sie der Schnittstelle hinzufügen möchten.

Muss Resharper lieben! ;-);


5
ARgh! Ich habe diese Option nicht einmal ausprobiert, weil ich dachte, dass sie nur mit geerbten Basisklassen zu tun hat. Ich könnte wetten, dass Extract Interface die richtige Wahl war ... Wie auch immer, danke!
Johan Danforth

2
Ja, ich hatte genau die gleiche Erfahrung, Extract Interface scheint die intuitivste Option zu sein, aber hey, zumindest haben wir eine Möglichkeit, das gewünschte Ergebnis zu erzielen :-)
Russell Giddings

Ich sehe nicht, dass es in der neuen ReSharper-Version funktioniert oder existiert
RJN

Es funktioniert immer noch ... kann jedoch keine vorhandene Schnittstelle erkennen und neue Methoden darin einfügen.
Ingweland

@RJN Stellen Sie sicher, dass die Klasse, in der Sie sich befinden, die Schnittstelle bereits implementiert.
Greg Quinn
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.