NuGet Error NU1105

Escenario 1

No se puede leer la información del proyecto para "ProjectFile". Es posible que el archivo del proyecto no sea válido o que falten destinos necesarios para la restauración.

Cuestión

El archivo del proyecto existe, pero no se proporcionó información de restauración para él. Asegúrese de que va a abrir un proyecto con el nuevo sistema de proyectos o el sistema de proyectos heredado.

Solución

Línea de comandos

Desde la línea de comandos, esto podría significar que el archivo está dañado o que NuGet.targets no se importan. Para importar , NuGet.targetsnormalmente se recomienda importar .Microsoft.Common.targets Para restaurar proyectos en la solución mediante la CLI de .NET , use:

dotnet restore MySolution.sln

Visual Studio

En Visual Studio, el error podría significar que los destinos no son similares al escenario de la línea de comandos.

El error también podría significar que el proyecto se descarga.

  • Si usa Visual Studio 2019 o posterior, NuGet tiene la capacidad de volver a usar artefactos de la restauración anterior para proyectos descargados. Para que este escenario funcione, debe asegurarse de que todos los proyectos de la solución se han restaurado desde la línea de comandos antes de cargarlos en Visual Studio.

  • Como alternativa, vuelva a cargar el proyecto.

Escenario 2

Marco de destino 'net.6.0' no válido

Cuestión

El archivo de proyecto existe, pero especifica un marco de destino no válido: 'net.6.0'. Esto puede ocurrir debido a un error tipográfico o al uso de un formato no admitido.

Solución

Actualice el archivo de proyecto para usar una plataforma de destino válida. En este caso, reemplace por 'net.6.0''net6.0' (sin el punto adicional). Para obtener una lista completa de los marcos admitidos y sus formatos correctos, consulte la documentación de .NET Target Frameworks .

Escenario 3

No se puede encontrar información del proyecto para "ProjectFile". Si usa Visual Studio, puede deberse a que el proyecto se descarga o no forma parte de la solución actual para ejecutar una restauración desde la línea de comandos. De lo contrario, es posible que el archivo del proyecto no sea válido o que falten destinos necesarios para la restauración.

Cuestión

Un proyecto hace referencia a otro proyecto (por ejemplo, a través de ) <ProjectReference>que no se incluye en la solución actual. NuGet no encuentra la información de restauración del proyecto al que se hace referencia porque no se carga como parte de la solución.

Solución

Línea de comandos

Ejecute la restauración desde la línea de comandos y tenga como destino el archivo de solución o el archivo de proyecto directamente:

dotnet restore MySolution.sln

La ejecución de la restauración desde la línea de comandos funciona incluso cuando no se cargan todos los proyectos, ya que lee los archivos del proyecto directamente en lugar de confiar en el estado de carga de la solución.

Visual Studio

  • Agregue el proyecto que falta a la solución actual y vuelva a cargar la solución o vuelva a ejecutar la restauración.
  • Si excluye intencionadamente el proyecto de la solución, ejecute una restauración de línea de comandos para la solución una vez antes de confiar en la restauración integrada de Visual Studio. Visual Studio puede volver a usar los artefactos de restauración para el proyecto excluido.