Eu tenho um projeto e solução WinForms, com alguns projetos de biblioteca de classes também adicionados à mesma solução.
O projeto WinForms usa código nas bibliotecas de classes. Eu uso este aplicativo há cerca de um ano e sempre funcionou bem.
No entanto, hoje, eu adicionei algumas funcionalidades aobiblioteca de classes, mas essas alterações não aparecem no aplicativo em execução. Também tentei adicionar um novo método público a uma das classes, mas esse método não aparece no Intellisense para o aplicativo.
Isso deve ser realmente simples de resolver, mas, comdo jeito que o WinForms está copiando DLLs automaticamente nos bastidores, não faço ideia de onde está o problema. Tudo o que olho parece certo para mim. O código continua a funcionar como se estivesse usando uma versão antiga da DLL. Mas a DLL no diretório Bin do meu aplicativo WinForms tem a data de hoje.
Alguém pode fazer uma recomendação sobre onde eu deveria estar procurando uma solução para isso?
Respostas:
1 para resposta № 1Conforme A resposta de Michael você pode achar que a referência de montagem não é realmente uma referência de projeto, mas sim para um caminho específico que não é o caminho que você compilou (por exemplo, binRelease).
Além disso, isso pode parecer trivial, mas verifique novamenteque as propriedades de configuração da sua solução estão realmente construindo o projeto quando você usa a função Build! Desativei os projetos de compilar apenas para esquecer que fiz isso e fiquei perplexo quando as alterações deles não estão no meu aplicativo!
2 para resposta № 2
Gostaria de entrar nas propriedades do projeto, excluir a referência e adicioná-la novamente para verificar se a sua dll está vindo do local que você acredita que seja. Limpar e reconstruir o projeto
0 para resposta № 3
Você colocou alguma das bibliotecas de classes no GAC?
Se um assembly de nome forte com a mesma AssemblyVersion estivesse no GAC, isso seria usado em vez do da sua solução.