Facebook Pixel
.NET Web App Para de Funcionar Após Sincronia do OneDrive

.NET Web App Para de Funcionar Após Sincronia do OneDrive

Excesso de cuidado nunca é demais quando se trata de nossos códigos-fonte. Com isso em mente, algumas pessoas fazem um controle à parte dos seus projetos. Além de estarem devidamente versionados em alguma ferramenta para esse propósito, também se encontram em seu disco local em um diretório de sincronia automática do OneDrive. Dessa forma se algo de errado acontece com o repositório ainda existe uma cópia local replicada em nuvem.

Acontece que o OneDrive tem seus mecanimos de verificar se arquivos foram alterados em duplicidade em diferentes dispositivos, quando isso acontece, na impossibilidade de escolher um mais novo, ele mantém as duas cópias do arquivo e adiciona o nome do dispositivo ao final, por exemplo, o arquivo “Main.aspx” vai ser duplicado sendo que a segunda cópia vai se chamar “Main-Computador-01.aspx”, partindo-se do princípio que “Computador-01” é o nome do computador atual. Caso ele perceba que o mesmo conflito aconteceu com outro dispositivo, ele fará a mesma coisa e irá adicionar mais uma cópia do arquivo chamada “Main-Computador-02.aspx”, partindo do princípio que o novo computador se chama “Computador-02”.

Isso, por si só, já faria uma grande bagunça na sua estrutura de arquivos, te obrigando a escolher qual deles é verdadeiramente a versão mais recente. A coisa pode ficar ainda pior se trechos de código estiverem atualizados em um computador e outros trechos em outro computador mas isso é bem raro de acontecer. Por isso o ideal para programadores é mesmo sempre ter seus códigos-fonte controlados e versionados em uma ferramenta de repositório.

Mas o problema não para por aí. No momento de executar o programa ou debugar, por alguma razão estranha, o Visual Studio ou o OneDrive desviam as chamadas aos arquivos originais para aqueles que foram renomeados, causando inúmeros problemas.

Você tenta apagar os arquivos renomeados, nas esperança de resolver mas nada resolve, nem reiniciar o computador.

Solução

Apesar de ser um problema muito frustrante, a solução é bem simples. Basta apagar os diretórios “bin” e “obj” do seu projeto. As chamadas para os aquivos renomeados acontecem em arquivos pré-compilados que ficam nesse local.

Se você quiser apagar tais diretórios de dentro do Visual Studio, sem precisar ir para o navegador de aquivos, basta habilitar a exibição de arquivos ocultos, na barra superior do Solution Explorer, botão que fica à esquerda do botão com o ícone da chave de boca, e então excluir os diretórios com o clique-direto do mouse.

Feito isso, da próxima vez que você executar a aplicação o Visual Studio irá remontar esses diretórios automaticamente da forma correta.


Se você achou esse conteúdo útil ou relevante, considere assinar este blog, preenchendo seu e-mail no campo abaixo. Se achar conveniente deixe seu comentário ao final deste artigo.

Deixe seu comentário