ReSharperで既存のインターフェースにメソッドを抽出する


101

インターフェイスを実装するクラスに新しいメソッドを追加しています。「インターフェイスの抽出」リファクタリングを使用して、メソッドをインターフェイスに追加するだけです。しかし、ReSharperが既存のインターフェースへのメソッドシグネチャの追加をサポートしているようには見えません。

何かが足りないような気がしますが、なんとかできるはずです。最初にメソッドシグネチャをインターフェイスに追加する必要があるかもしれませんが、これは私が時々作業している方法です。ショートカット、機能がない、またはReSharperを間違って使用していますか?

回答:


192

Ctrl + Shift + Rでリファクタリングメニューにアクセスし、[ メンバーを上にプル... ]を選択します

宣言を追加するインターフェイスを選択し、インターフェイスに追加する各メソッドを選択することもできます。

お奨めリシャーパー!;-)


5
ARgh!継承された基本クラスのみに関係していると思ったので、私はそのオプションすら試しませんでした。Extract Interfaceが正しい選択だったに違いない...とにかく、ありがとう!
ヨハンダンフォース

2
はい、私はまったく同じ経験をしました。ExtractInterfaceが最も直感的なオプションのようですが、ねえ、少なくとも私たちは望ましい結果を達成する方法を持っています:-)
Russell Giddings

ReSharperの新しいバージョンで動作しているか、存在していないようです
RJN '23

それはまだ機能しています...しかし、既存のインターフェースを検出してその中に新しいメソッドを置くことはできません。
Ingweland

@RJNあなたがいるクラスがすでにインターフェースを実装していることを確認してください。
グレッグクイン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.