Wiem, jak znaleźć nieużywane odniesienia do pojedynczego pliku, klikając plik prawym przyciskiem myszy i wybierając opcję „Znajdź zastosowania”. Czy istnieje sposób, aby wyświetlić lub pobrać listę wszystkich nieużywanych klas lub plików w moim projekcie?
Najpierw włącz „Analizuj błędy w rozwiązaniu” (kliknij prawym przyciskiem myszy ikonę Resharper na pasku stanu).
Następnie kliknij prawym przyciskiem myszy węzeł rozwiązania i wybierz „Znajdź problemy z kodem”. W oknie narzędzia „Wyniki inspekcji” można pogrupować według „Typu sprawy” i wyszukać „Typ lub typ składowy nigdy nie jest używany”, aby uzyskać wszystkie nieużywane klasy (i wiele innych nieużywanych symboli).
Drugą opcją (po włączeniu „Analizuj błędy w rozwiązaniu”) jest przejście do dowolnej nieużywanej klasy, wciśnięcie Alt + Enter, wybranie opcji „Opcje dla inspekcji„ Typ lub typ elementu członkowskiego ... ”| Znajdź wszystkie problemy z kodem tego typu | Całe rozwiązanie.
Nieużywane klasy / metody pojawiają się w sekcji „Typ lub typ składowy nigdy nie jest używany” w sekcji „Zwolnienia w deklaracjach symboli”. Nie jestem pewien, czy jest to spowodowane zmianą wersji, czy też patrzę na to inaczej.
Resharper 10: Ten raport nie pokazuje niewykorzystanych klas. Obejście: znajdź w kodzie nieużywaną klasę i wykonaj „Znajdź podobne problemy w rozwiązaniu”
Nadal łamane w Resharper 2018.1 :( wykonaj powyższe obejście, ale jeśli nie można łatwo znaleźć nieużywaną klasę (lub metody), a następnie tymczasowo stworzyć jedną, a następnie zrobić „Znajdź podobne problemy w roztworze” używając go
Rozwiązanie @ulrichc brzmi idealnie i działa dobrze dla małych i średnich projektów, w których nie używasz żadnego frameworka Dependency Injection , takiego jak Castle lub Ninject, ale co, jeśli używasz kontenera DI [na przykład Castle] i masz coś takiego:
Jak widać, RegisterFromAssembly przechodzi przez wszystkie typy wewnątrz zestawu i ślepo [na podstawie parametru Methods] dodaje je do kontenera w czasie wykonywania.
Będziesz potrzebował czegoś takiego jak wtyczka agenta Mulder, która zapewnia nawigację dla typów zarejestrowanych lub rozwiązanych w twoich kontenerach. To znowu może wizualnie zadziałać [prawdopodobnie czas projektowania], ale tak naprawdę nie byłbyś pewny, chyba że za każdym razem, gdy usuwasz nieużywaną klasę, uruchamiasz wszystkie testy w aplikacji [każda możliwa warstwa], aby mieć 80% pewności, że jesteś bezpieczny. Morał z tej historii: klasa może wydawać się nieprzyzwoita dla Resharper, ale może zostać wskrzeszona, gdy użyjesz Dependency Injection.
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.