Tak zgadza się. W VS 2008 istniała sobie opcja Promote Local Variable to Parameter, która jak sama nazwa wskazuje zamienia zmienną lokalną na parametr metody. Można spekulować czy była ona często używana czy też nie, ale była. Teraz, jeżeli w VS 2010, klikniemy CTRL + R + P (skrót do tej funkcjonalności), dostajemy:

 vs2010_refactoring_error

Przyjrzymy się menu refactoringu z VS 2008:

 vs2008_refactoring

A teraz spójrzmy na VS 2010:

vs2010_refactoring

Jak widać na załączonym obrazku, funkcjonalności takiej nie ma :( I z tego co wiem jest to decyzja ostateczna – została ona po prostu usunięta zgodnie z wynikami ankiet przeprowadzonych pomiędzy partnerami Microsoft.

IMO jest to smutna wiadomość, nie każdy ma R# czy CodeRush, a narzędzie typu VS powinno przynajmniej wspierać podstawowy refactoring.

To co teraz możemy zrobić to liczyć na to, iż w wersji VS vNext będzie ta opcja dostępna lub :) coś lepszego ;)

PS: Wczoraj na PDC zostało powiedziane, że będzie dostępna wersja CodeRush Express za darmo, która będzie miała tą funkcjonalność – więc to dobra informacja dla tych wszystkich użytkowników, którzy nie chcą zapłacić za R# czy pełną wersją CodeRush :)