Respostas:
Abra seu arquivo csproj no bloco de notas (ou bloco de notas ++) Encontre a linha:
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
e mude para
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
Esta é uma solução global, não depende de pacote ou compartimento específico.
No meu caso, removi Pacotes pasta do meu diretório raiz.
Talvez isso aconteça porque seus pacotes estão lá, mas o compilador não está encontrando sua referência. então remova primeiro os pacotes antigos e adicione novos.
Etapas para adicionar novos pacotes
Esta não é uma solução adequada, mas eu a publiquei aqui porque enfrento o mesmo problema.
No meu caso, nem consegui abrir minha solução no visual studio e não recebi nenhuma ajuda com outras respostas do SO.
Microsoft.CSharp.targets
por algum motivo , o arquivo foi excluído! como você disse, apaguei a packages
pasta e reiniciei o Visual Studio, magicamente funcionou!
Para mim, o problema era que o caminho do projeto continha% 20 caracteres, porque o git os adicionou em vez de espaços quando o repositório foi clonado. Outro problema pode ser se o caminho para um pacote for muito longo.
git clone <RepoUrl> <LocalDirName>
para especificar o nome do diretório no qual clonar para evitar o% 20
Esse link no MSDN também ajuda muito a entender o motivo pelo qual ele não funciona. $ (MSBuildToolsPath) é o caminho para Microsoft.Build.Engine v3.5 (inserido automaticamente em um arquivo de projeto quando você cria no VS2008). Se você tentar criar seu projeto para o .Net 2.0, verifique se alterou esse caminho para $ (MSBuildBinPath), que é o caminho para Microsoft.Build.Engine v2.0.
No meu caso, não consegui carregar um dos cinco projetos na minha solução.
Isso ajudou a fechar o Visual Studio e eu tive que excluir a Microsoft.Net.Compilers.1.3.2
pasta nuget na packages
pasta.
Depois, abra sua solução novamente e o projeto foi carregado conforme o esperado
Apenas para ter certeza, feche todas as instâncias do VS antes de excluir a pasta.
Eu costumava ter esta seguinte linha no arquivo csproj:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
Depois de excluir este arquivo, ele funciona bem.
Se você encontrar o erro que diz Microsoft.CSharp.Core.targets not found
, estas são as etapas que tomei para corrigir o meu:
Abra qualquer pasta de projetos em funcionamento anteriores e navegue até o link mostrado no erro, ou seja, Projects/(working project name)/packages/Microsoft.Net.Compilers.1.3.2/tools/
e procure o Microsoft.CSharp.Core.targets
arquivo.
Copie esse arquivo e coloque-o no projeto tools folder
que não está funcionando (ou seja, navegando até a pasta de ferramentas no projeto que não está funcionando, como mostrado acima)
Agora feche seu projeto (se ele estava aberto) e reabra-o.
Deve estar funcionando agora.
Além disso, para garantir que tudo esteja funcionando corretamente no seu projeto do Visual Studio, agora aberto, vá para Tools > NuGetPackage Manager > Manage NuGet Packages For Solution
. Aqui, você pode encontrar um erro que diz que o CodeAnalysis.dll está sendo usado por outro aplicativo.
Mais uma vez, vá para tools folder
, encontre o arquivo especificado e exclua-o. Volte para Manage NuGet Packages For Solution
. Você encontrará um link que solicitará que você recarregue, clique nele e tudo será reinstalado.
Seu projeto deve estar funcionando corretamente agora.
Eu consegui isso depois de reinstalar o Windows. O Visual Studio foi instalado e pude ver o tipo de projeto do Silverlight na janela Novo Projeto, mas a abertura de um não funcionou. A solução foi simples: tive que instalar o tempo de execução do Silverlight Developer e / ou o Microsoft Silverlight 4 Tools for Visual Studio. Isso pode parecer estúpido, mas eu o ignorei porque achei que deveria funcionar, pois o tipo de projeto do Silverlight estava disponível.
No meu caso, abri meu arquivo .csproj no bloco de notas e removi as três linhas a seguir. Funcionou como um encanto:
<Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />
<Import Project="..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="..\packages\Microsoft.Net.Compilers.1.3.2\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.3.2\build\Microsoft.Net.Compilers.props')" />
ok e daí se diz o seguinte: entre os sinais gt / lt
Importar projeto = "$ (MSBuildExtensionsPath) \ Microsoft \ Silverlight \ v3.0 \ Microsoft.Silverlight.CSharp.targets" /
Como faço para corrigir o erro de metas?
Eu também descobri essa sequência de importação em um projeto de demonstração (especificamente "Crie seu próprio MVVM Framework" de Rob Eisenburg).
Se você substituir essa importação pela sugerida pelos relatórios lomaxx VS2010 RTM, será necessário instalá- lo .
Para erros com Microsoft.WebApplications.targets
, você pode:
Microsoft.WebApplication.targets
” do arquivo da máquina de desenvolvimento para a máquina de construção do TFS.Aqui está o post.
Este erro também pode ocorrer ao abrir um projeto do Silverlight que foi construído no SL 4, enquanto você tiver o SL 5 instalado.
Aqui está um exemplo de mensagem de erro: O projeto importado "C: \ Arquivos de Programas (x86) \ MSBuild \ Microsoft \ Silverlight \ v4.0 \ Microsoft.Silverlight.CSharp.targets" não foi encontrado.
Observe a v4.0.
Para resolver, edite o projeto e localize:
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
E mude para a v5.0.
Em seguida, recarregue o projeto e ele será aberto (a menos que você não tenha o SL 5 instalado).
Excluí a pasta obj e o projeto foi carregado conforme o esperado.
Às vezes, o problema pode estar na versão VS codificada no arquivo .csproj. Se você tiver em seu csproj algo parecido com isto:
[...]\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets"
Você deve verificar se o número está correto (a razão pela qual está errado pode ser que o projeto foi criado com outra versão do Visual Studio). Se estiver errado, substitua-o por sua versão atual das ferramentas de compilação OU use a variável VS:
[...]\VisualStudio\v$(VisualStudioVersion)\WebApplications\Microsoft.WebApplication.targets"
Eu me deparei com esse problema ao executar um manual do Ansible, por isso quero adicionar meus 2 centavos aqui. Percebi uma mensagem de aviso sobre a falta do Visual Studio 14. O Visual Studio versão 14 foi lançado em 2015 e a solução para meu problema foi instalar o Visual Studio 2015 Professional na máquina host do meu agente do DevOps do Azure.
Microsoft.CSharp.Targets
paraMicrosoft.CSharp.targets
nos.csproj
arquivos.