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

StackOverflow https://stackoverflow.com/questions/5694

  •  08-06-2019
  •  | 
  •  

Вопрос

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

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

Это было полезно?

Решение

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

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

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

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

Другие советы

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

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

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

Шаги к Добавить новые пакеты

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

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

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

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

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

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

Это помогло закрыть Visual Studio и мне пришлось удалить Microsoft.Net.Compilers.1.3.2 папка nuget под packages папка.

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

На всякий случай закройте все экземпляры VS, прежде чем удалять папку.

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

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

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

Если вы столкнулись с ошибкой, в которой говорится 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 все работает правильно, перейдите по ссылке Tools > NuGetPackage Manager > Manage NuGet Packages For Solution.Здесь вы можете найти сообщение об ошибке: CodeAnalysis.dll используется другим приложением.

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

Теперь ваш проект должен работать правильно.

У меня такое появилось после переустановки винды.Visual Studio была установлена, и я мог видеть тип проекта Silverlight в окне «Новый проект», но открыть его не удалось.Решение было простым:Мне пришлось установить среду выполнения Silverlight Developer и/или инструменты Microsoft Silverlight 4 для Visual Studio.Это может показаться глупым, но я упустил это из виду, поскольку считал, что это должно работать, поскольку тип проекта Silverlight был доступен.

ок, а что, если он скажет следующее:между знаками GT/LT

Import Project = "$ (msbuildextensionspath) microsoft silverlight v3.0 microsoft.silverlight.csharp.targets" /

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

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

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

При ошибках с Microsoft.WebApplications.targets, ты можешь:

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

Вот пост.

В моем случае я открыл файл .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')" />

Эта ошибка также может возникнуть при открытии проекта 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).

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

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

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

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top