Kesalahan NuGet NU1105

Skenario 1

Tidak dapat membaca informasi proyek untuk 'ProjectFile'. File proyek mungkin tidak valid atau tidak ada target yang diperlukan untuk pemulihan.

Masalah

File proyek ada tetapi tidak ada informasi pemulihan yang disediakan untuknya. Pastikan Anda membuka proyek dengan sistem proyek baru atau sistem proyek warisan.

Solusi

Baris perintah

Dari baris perintah ini bisa berarti bahwa file rusak atau tidak NuGet.targets diimpor. Untuk mengimpor NuGet.targets, biasanya disarankan untuk mengimpor Microsoft.Common.targets. Untuk memulihkan proyek dalam solusi menggunakan .NET CLI gunakan:

dotnet restore MySolution.sln

Visual Studio

Di Visual Studio, kesalahan dapat berarti bahwa target tidak diimpor mirip dengan skenario baris perintah.

Kesalahan juga dapat berarti bahwa proyek dibongkar.

  • Jika Anda menggunakan Visual Studio 2019 atau yang lebih baru, NuGet memiliki kemampuan untuk menggunakan kembali artefak dari pemulihan sebelumnya untuk proyek yang dibongkar. Agar skenario ini berfungsi, Anda perlu memastikan bahwa semua proyek yang saat ini dalam solusi telah dipulihkan dari baris perintah sebelum memuatnya di Visual Studio.

  • Atau, muat ulang proyek.

Skenario 2

Kerangka kerja target 'net.6.0' tidak valid

Masalah

File proyek ada tetapi menentukan kerangka kerja target yang tidak valid: 'net.6.0'. Ini dapat terjadi karena kesalahan ketik atau penggunaan format yang tidak didukung.

Solusi

Perbarui file proyek untuk menggunakan kerangka kerja target yang valid. Dalam hal ini, ganti 'net.6.0' dengan 'net6.0' (tanpa titik tambahan). Untuk daftar lengkap kerangka kerja yang didukung dan format yang benar, lihat dokumentasi .NET Target Frameworks .

Skenario 3

Tidak dapat menemukan informasi proyek untuk 'ProjectFile'. Jika Anda menggunakan Visual Studio, ini mungkin karena proyek dibongkar atau bukan bagian dari solusi saat ini sehingga jalankan pemulihan dari baris perintah. Jika tidak, file proyek mungkin tidak valid atau tidak ada target yang diperlukan untuk pemulihan.

Masalah

Proyek mereferensikan proyek lain (misalnya, melalui <ProjectReference>) yang tidak disertakan dalam solusi saat ini. NuGet tidak dapat menemukan informasi pemulihan untuk proyek yang direferensikan karena tidak dimuat sebagai bagian dari solusi.

Solusi

Baris perintah

Jalankan pemulihan dari baris perintah, yang menargetkan file solusi atau file proyek secara langsung:

dotnet restore MySolution.sln

Menjalankan pemulihan dari baris perintah berfungsi bahkan ketika tidak semua proyek dimuat, karena membaca file proyek secara langsung daripada mengandalkan status beban solusi.

Visual Studio

  • Tambahkan proyek yang hilang ke solusi saat ini, lalu muat ulang solusi atau jalankan pemulihan lagi.
  • Jika Anda sengaja mengecualikan proyek dari solusi, jalankan pemulihan baris perintah untuk solusi sekali sebelum mengandalkan pemulihan bawaan Visual Studio. Visual Studio kemudian dapat menggunakan kembali artefak pemulihan untuk proyek yang dikecualikan.