Ошибка NU1105 Невозможно найти информацию о проекте. Файл проекта может быть недействительным или отсутствовать цели, необходимые для восстановления

Внезапно я получаю следующие ошибки для 3-х проектов в решении:

Error NU1105 Unable to find project information for 'C:\code\example\src\libs\example.I18n\example.I18n.csproj'. 
The project file may be invalid or missing targets required for restore.

В проекте только что изменились, это несколько изменений в БД, но в прошлом никогда не было никаких проблем. Только что я обновил Visual Studio 2017 15.5, может ли это вызвать проблему?

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

Пример одного из файлов .csproj, если это помогает:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net452</TargetFramework>
    <AssemblyName>Example.I18n</AssemblyName>
    <PackageId>Example.I18n</PackageId>
    <GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
    <GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute>
    <GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Mvc.Core" Version="1.1.2" />
    <PackageReference Include="Microsoft.Extensions.Logging" Version="1.1.1" />
    <PackageReference Include="MessageFormat" Version="1.0.1" />
  </ItemGroup>

  <ItemGroup Condition=" '$(TargetFramework)' == 'net452' ">
    <Reference Include="System" />
    <Reference Include="Microsoft.CSharp" />
  </ItemGroup>

</Project>

Ответ 1

Для меня оболочка файла проекта на диске не соответствует оболочке в файле решения.

Скажем, у меня было решение с LibraryA.csproj и LibraryB.csproj, где LibraryB.csproj имеет ссылку на LibraryA.csproj. Наличие неправильного корпуса для LibraryA.csproj в файле решения вызовет NU1105 при построении LibraryB.csproj:

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibraryA", "LibraryA\Librarya.csproj", "{24DEBB3B-762A-491D-8B83-6D078C0B30C0}"

Я начал эту проблему после обновления до версии 15.5 Visual Studio 2017. Я не сталкивался с этой проблемой с версией 15.4.5.

Ответ 2

Я также получил то же самое после обновления до версии 15.6 Visual Studio 2017.

Закрытие VS и удаление папки .vs исправили его для меня.

Ответ 3

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

Ответ 4

Кажется, что некоторые проекты были удалены из файла решения (не знаю почему). Исправлено путем отмены этих изменений файла решения

Ответ 5

Я столкнулся с этой ошибкой при наличии дублирующейся ссылки на проект.

<ProjectReference Include="..\ProjectA.csproj" />
<ProjectReference Include="..\ProjectA.csproj" />

Удаление дубликата ссылки решило ошибку.

Ответ 6

То, что работало для меня, было

  1. Удалить оскорбительный проект
  2. Постройте решение
  3. Повторно добавьте проект.

Ответ 7

У меня есть следующая структура проекта (.Net Core проектов):

../classLib
../../../webProject1
../../../webProject2
../../myWebProjects.sln

webProject1 и webProject2 ссылаются на classLib как на сам проект (а не на .dll). Когда я открыл свое решение в VS 2019 и попытался собрать, я получил ту же error NU1105: Unable to find project information for '../classLib.csproj'. ошибка.

Перед сборкой зависимых проектов необходимо восстановить там зависимость. Что я сделал, просто добавьте следующую Target в мои webProject1.csproj и webProject2.csproj.

<Target Name="PreBuild" BeforeTargets="PreBuildEvent">
    <Exec Command="dotnet restore" />
</Target>