Respostas:
Ele exclui todos os arquivos compilados e temporários associados a uma solução. Isso garante que a próxima compilação seja completa, em vez de apenas os arquivos alterados serem recompilados.
Ele exclui todo o código-objeto gerado durante a compilação / construção anterior. Exclui todos os tipos de arquivos abaixo: -
* .obj - código do objeto
* .pdb - arquivo de banco de dados de depuração de programa
* .bsc - banco de dados do navegador de origem
* .ilk - arquivo de linker incremental
* .sbr - arquivo intermediário do navegador de origem
* .idb - reconstruir arquivo de dependência
* .lib - arquivo de biblioteca
* .exe - executável
JFYI - Mesmo um comando Rebuild All fará tudo isso e então continuará a construir o conjunto completo de arquivos de origem.
-DE ANÚNCIOS
Eu queria que fosse um comentário, mas aparentemente preciso de 50 repetições.
Para avisar os outros, acho que a solução de reconstrução não faz uma limpeza sozinho. Freqüentemente, não preciso limpá-lo e compilá-lo / reconstruí-lo para que funcione - acho que reconstruí-lo sozinho força uma compilação completa sem limpar e sobrescreve tudo, mas não elimina os extras.
Não analisamos o que a reconstrução faz com relação ao código, apenas uma observação geral caso outra pessoa tenha o mesmo problema.
Este é um post antigo, mas achei que valeria a pena mencionar. Ao codificar para o Silverlight, geralmente deixo o Blend e o VS2010 abertos ao mesmo tempo. Por causa disso, às vezes o VS2010 enlouquece e o IntelliSense não consegue encontrar onde as coisas estão ou algo assim, resultando em um falso destaque de muitos erros.
Limpar a solução corrige isso.
Apaga arquivos criados durante o processo de compilação. Força uma recompilação / construção completa da próxima vez.
cuidado ao limpar uma solução; quando você limpa uma solução e se você faz referência a uma biblioteca (digamos nhibernate) em seu projeto e se essa biblioteca tem uma dependência (digamos iesi.collections), então você verá que iesi.collections será excluída mesmo se você reconstruir o solução e você tem que colocar essa dll na sua pasta, novamente. ou você também pode consultar iesi.collections e escolher a opção copy-local: yes em suas propriedades
Para sua informação, nem o Clean nem o Rebuild excluirão arquivos não construídos, por exemplo, arquivos copiados durante um comando de pré-criação. Eu estava confuso sobre isso!