web-dev-qa-db-fra.com

Erreur NU1105 Impossible de trouver les informations sur le projet - Le fichier de projet est peut-être une cible invalide ou manquante, requise pour la restauration.

Tout à coup, les erreurs suivantes apparaissent pour 3 projets dans la solution:

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.

Dans le projet, seules quelques modifications ont été apportées à la base de données, mais n’avons jamais eu de problèmes par le passé. Seule autre chose que j'ai mise à jour vers Visual Studio 2017 15.5, est-ce que cela pourrait poser problème?

J'ai essayé - enlever et recloner la solution du contrôle de source. Mais toujours obtenir une erreur. Pas de problèmes sur les machines de mes collègues, donc ça doit être quelque chose de local.

Exemple d'un des fichiers .csproj si cela vous aide:

<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>
31
Paolo B

Pour moi, le boîtier du fichier de projet sur disque ne correspond pas à celui du fichier de solution.

Disons que j'avais une solution avec LibraryA.csproj et LibraryB.csproj, où LibraryB.csproj a une référence à LibraryA.csproj. Avoir un boîtier incorrect pour LibraryA.csproj dans le fichier de solution causerait NU1105 lors de la construction LibraryB.csproj:

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

J'ai commencé à voir ce problème après la mise à niveau vers la version 15.5 de Visual Studio 2017. Je n'ai pas rencontré ce problème avec la version 15.4.5.

12
Chris

J'ai également obtenu la même chose après la mise à niveau vers la version 15.6 de Visual Studio 2017.

Fermer VS et supprimer le dossier .vs l’a corrigé.

52
Alexandre Brisebois

Ce message d'erreur se produira également si un projet référencé n'est pas inclus dans la solution. J'ai rencontré ce problème aujourd'hui et j'ai trouvé le correctif ici .

6
Tyson Williams

Il semble que certains projets aient été supprimés du fichier de solution (je ne sais pas pourquoi). Corrigé en annulant ces modifications du fichier de solution

3
FindOutIslamNow

J'ai rencontré cette erreur lors de la duplication d'une référence à un projet.

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

Supprimer la référence en double a résolu l'erreur.

3
Adam

Ce qui a fonctionné pour moi a été de

  1. Supprimer le projet incriminé
  2. Construire la solution
  3. Rajoutez le projet.
1
Kevin Brydon

J'ai la structure de projet suivante (projets .Net Core):

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

webProject1 et webProject2 référence classLib comme projet lui-même (pas comme .dll). Lorsque j'ai ouvert ma solution dans VS 2019 et que j'ai essayé de le construire, je suis devenu identique error NU1105: Unable to find project information for '../classLib.csproj'. Erreur.

Avant de construire des projets dépendants, vous devez restaurer leur dépendance. Ce que j’ai fait, ajoutez simplement Target à mon webProject1.csproj et webProject2.csprojdes dossiers.

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