Après avoir "Extraire la classe" pour extraire quelques méthodes dans leur propre classe, je suis alors parti avec les méthodes originales enveloppant les appels aux méthodes de la nouvelle classe. Existe-t-il un autre refacteur que Resharper pourrait me permettre de faire, de repointer tous les usages aux nouvelles méthodes de la nouvelle classe, et peut-être ensuite de supprimer les anciennes méthodes?Une façon de refactoriser "repoint des usages à des méthodes sur l'autre classe" après l'extraction d'une classe en utilisant Resharper?
Par exemple, après une classe Extrait refactoring, je pourrais avoir:
public class FooSource {
private BarSource _barSource = new BarSource();
public Foo GetFoo(...) {...}
public Foo GetFooByName(...) {...}
public Bar GetBar(...) => _barSource.GetBar(...); // now a wrapper due to refactoring
public Bar GetBarByName(...) => _barSource.GetBarByName(...); // now a wrapper due to refactoring
}
public class BarSource { // my new class just generated by Resharper
private FooSource _fooSource = FooSource(); // sometimes this reference is needed; sometimes not; not relevant to this question
public Bar GetBar(...) {...}
public Bar GetBarByName(...) {...}
}
A partir de là, je veux rejointoyer tous les usages de FooSource.GetBar et FooSource.GetBarByName utiliser à la place une nouvelle instance de mon nouveau Classe BarSource. Y at-il quelque chose qui m'aidera à faire le plus (ou même seulement un peu) de ce travail automatiquement?
Merci - Je ne pensais pas de cette opération comme « inline » mais semble convenir. Je vais essayer. Est-il possible de le faire sur plusieurs méthodes à la fois? –
@PatrickSzalapski Je ne pense pas que ce soit; vous devrez intégrer chaque méthode individuellement. –