Eu sei como encontrar referências não utilizadas de um único arquivo clicando com o botão direito do mouse no arquivo e selecionando a opção "Localizar usos". Existe alguma maneira de ver ou obter a lista de todas as classes ou arquivos não utilizados no meu projeto?
122
Respostas:
Primeiro ative "Analisar erros na solução" (clique com o botão direito do mouse no ícone Resharper na barra de status).
Em seguida, clique com o botão direito do mouse no nó da solução e selecione "Localizar problemas do código". Na janela da ferramenta "Resultados da inspeção", você pode agrupar por "Tipo de problema" e procurar "Tipo ou membro do tipo nunca é usado" para obter todas as classes não utilizadas (e muitos outros símbolos não utilizados).
Uma segunda opção (depois de ativar "Analisar erros na solução") é ir para qualquer classe não utilizada, pressionar Alt + Enter, selecionar "Opções para inspeção 'Digite ou digite membro ...'" | Encontre todos os problemas de código deste tipo | Solução inteira.
fonte
A solução by @ulrichc parece perfeita e funciona bem para projetos de pequeno a médio porte nos quais você não está usando nenhuma estrutura de Injeção de Dependência , como Castle ou Ninject, mas e se você estiver usando o contêiner DI [Castle por exemplo] e tiver algo como o seguinte:
Como você pode ver, RegisterFromAssembly passa por todos os tipos dentro da montagem e, às cegas [com base no parâmetro de métodos], os adiciona ao contêiner no tempo de execução.
Você precisará de algo como o plug-in Agent Mulder, que fornece navegação para os tipos registrados ou resolvidos dentro de seus contêineres. Isso novamente pode visualmente [tempo de design possível] funcionar, mas você não tem certeza, a menos que toda vez que remover a classe não utilizada, execute todos os testes dentro do aplicativo [todas as camadas possíveis] para ter 80% de certeza de que está seguro. Moral da história: uma classe pode parecer não utilizada para o Resharper, mas pode ser ressuscitada quando você usa a Injeção de Dependência.
fonte