0

J'utilise Resharper 4.5 dans Visual Studio 2008. Chaque fois que j'essaie d'extraire un bloc de code dans une méthode, il essaie de créer un sous-programme et non une fonction. L'option de type de retour est désactivée. Quelqu'un at-il des conseils sur la façon dont je peux l'obtenir pour créer une fonction et non un sous-programme?Resharper 4.5 Méthode d'extraction - Impossible d'obtenir la fonction!

merci!

Répondre

1

Il est probable que le code que vous avez mis en évidence n'a rien à retourner. Si le code que vous avez mis en surbrillance ne définit pas les variables qui sont utilisées plus bas dans votre code, votre code refacturé ne renverra rien.

Par exemple, si je souligne ce code et extrait Méthode ...

 Program p = new Program(); 
     p.DoStuff(); 

... il n'y a rien à retourner (je ne fait pas référence au-delà de ce code p). Si je souligne les 2 premières lignes de ce code ...

 Program p = new Program(); 
     p.DoStuff(); 
     p.DoMoreStuff(); 

... alors ReSharper va créer une méthode retournant une instance de programme (à savoir « p »).

+1

Il semble que cela dépend de la façon dont vous déclarez la variable. Dans votre exemple ci-dessus, si je le fais (en VB): "Dim p comme nouveau programme" et mettez en surbrillance ce que vous dites, il fait toujours un sous-programme, MAIS si je le fais: "Dim p comme Programme = Nouveau programme", une fonction. Je pense que c'est stupide, mais merci! –