Подтвердить что ты не робот

Импортированный проект "C:\Microsoft.CSharp.targets" не найден

Я получил эту ошибку сегодня при попытке открыть проект Visual Studio 2008 в Visual Studio 2005:

Не удалось найти импортированный проект "C:\Microsoft.CSharp.targets".

4b9b3361

Ответ 1

Откройте файл csproj в блокноте (или блокноте ++) Найдите строку:

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

и измените его на

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

Ответ 2

Это глобальное решение, не зависящее от конкретного пакета или корзины.

В моем случае я удалил папку Packages из своего корневого каталога.

Возможно, это происходит из-за того, что ваши пакеты есть, но компилятор не находит на них ссылку. поэтому сначала удалите старые пакеты и добавьте новые.

Шаги по добавлению новых пакетов

  • Сначала удалите папку пакетов (она будет рядом или на шаг вверх по отношению к вашей текущей папке проекта).
  • Затем перезапустите проект или решение.
  • Теперь перестройте файл решения.
  • Проект получит новые ссылки от менеджера пакетов nuGet. И ваша проблема была решена.

Это неправильное решение, но я разместил его здесь, потому что столкнулся с той же проблемой.

В моем случае я даже не смог открыть свое решение в визуальной студии и не получил никакой помощи с другими SO-ответами.

Ответ 3

Для меня проблема заключалась в том, что путь проекта содержал 20 символов, потому что git добавлял их вместо пробелов при клонировании репозитория. Другая проблема может заключаться в том, что путь к пакету слишком длинный.

Ответ 4

Эта ссылка на MSDN также помогает понять причину, по которой она не работает. $(MSBuildToolsPath) - это путь к Microsoft.Build.Engine v3.5 (автоматически вставлен в файл проекта при создании в VS2008). Если вы попытаетесь создать свой проект для .Net 2.0, убедитесь, что вы изменили этот путь на $(MSBuildBinPath), который является путем Microsoft.Build.Engine v2.0.

Ответ 5

В моем случае я не смог загрузить один из 5 проектов в моем решении.

Это помогло закрыть Visual Studio, и я должен был удалить Microsoft.Net.Compilers.1.3.2 папку nuget в папке packages.

После этого откройте решение снова, и проект загрузится как ожидалось

Чтобы быть уверенным, закройте все экземпляры VS перед удалением папки.

Ответ 6

Я использовал следующую строку в файле csproj:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />

После удаления этого файла он отлично работает.

Ответ 7

Если вы столкнетесь с ошибкой, в которой говорится, что Microsoft.CSharp.Core.targets not found, я предпринял следующие шаги, чтобы исправить мою:

  1. Откройте любую предыдущую папку с рабочими проектами и перейдите по ссылке, показанной в ошибке, то есть Projects/(working project name)/packages/Microsoft.Net.Compilers.1.3.2/tools/ и найдите Microsoft.CSharp.Core.targets файл.

  2. Скопируйте этот файл и поместите его в tools folder нерабочего проекта (то есть перейдите в папку инструментов в нерабочем проекте, как показано выше)

  3. Теперь закройте ваш проект (если он был открыт) и снова откройте его.

Это должно работать сейчас.

Кроме того, чтобы убедиться, что все работает правильно в вашем теперь открытом Visual Studio Project, Tools > NuGetPackage Manager > Manage NuGet Packages For Solution. Здесь вы можете обнаружить ошибку, которая говорит, что CodeAnalysis.dll используется другим приложением.

Снова перейдите в tools folder, найдите указанный файл и удалите его. Вернитесь к Manage NuGet Packages For Solution. Вы найдете ссылку, которая попросит вас перезагрузить, нажмите на нее, и все будет переустановлено.

Ваш проект должен работать правильно сейчас.

Ответ 8

Я получил это после переустановки Windows. Visual Studio была установлена, и я мог видеть тип проекта Silverlight в окне New Project, но открытие одного из них не сработало. Решение было простым: мне пришлось установить среду выполнения Silverlight Developer и/или Microsoft Silverlight 4 Tools для Visual Studio. Это может показаться глупым, но я не обратил на это внимания, потому что думал, что он должен работать, поскольку доступен проект проекта Silverlight.

Ответ 9

ok, так что, если он скажет это: между gt; lt lt

Импорт Проект = "$ (MSBuildExtensionsPath)\Microsoft\Silverlight\v3.0\Microsoft.Silverlight.CSharp.targets" /

как исправить ошибку целей?

Я также нашел, что строка импорта в демонстрационном проекте (в частности, "Создайте собственную MVVM Framework" Роб Эйзенбурга).

Если вы замените этот импорт на тот, который был предложен в отчетах RTM lomaxx VS2010, вам необходимо установить this.

Ответ 10

Для ошибок с Microsoft.WebApplications.targets вы можете:

  • Установите Visual Studio 2010 (или ту же версию, что и на машине разработки) на вашем сервере TFS.
  • Скопируйте "Microsoft.WebApplication.targets" из файла машины разработки в машину сборки TFS.

Вот сообщение.

Ответ 11

В моем случае я открыл файл .csproj в блокноте и удалил следующие три строки. Работали как шарм:

<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')" />

Ответ 12

Эта ошибка также может возникнуть при открытии проекта Silverlight, который был построен на SL 4, в то время как у вас установлен SL 5.

Вот пример сообщения об ошибке: импортированный проект "C:\Program Files (x86)\MSBuild\Microsoft\Silverlight\v4.0\Microsoft.Silverlight.CSharp.targets" не найден.

Обратите внимание на v4.0.

Чтобы разрешить, отредактируйте проект и найдите:

<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>

И измените его на v5.0.

Затем перезагрузите проект и он откроется (если у вас нет SL 5).

Ответ 13

Я удалил папку obj, а затем проект загрузился, как ожидалось.

Ответ 14

Иногда проблема может быть связана с жестко закодированной версией VS в файле .csproj. Если у вас есть в вашем csproj что-то вроде этого:

[...]\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets"

Вам следует проверить правильность номера (причина может быть неправильной - проект был создан с другой версией Visual Studio). Если это не так, замените его текущей версией инструментов сборки ИЛИ используйте переменную VS:

[...]\VisualStudio\v$(VisualStudioVersion)\WebApplications\Microsoft.WebApplication.targets"

Ответ 15

Я столкнулся с этой проблемой, выполняя пьесу Ansible, поэтому я хочу добавить свои 2 цента здесь. Я заметил предупреждающее сообщение об отсутствии Visual Studio 14. Версия Visual Studio 14 была выпущена в 2015 году, и решением моей проблемы была установка Visual Studio 2015 Professional на хост-компьютере моего агента Azure DevOps.

Ответ 16

После попытки восстановления, закрытия VS, удаления сбойного пакета, повторного открытия, попытки восстановления, несколько раз я просто удалял все в пакетах, и когда я делал восстановление, и оно работало отлично.