Bagikan melalui


NETSDK1206: Ditemukan pengidentifikasi runtime khusus versi atau khusus distribusi

NETSDK1206 menunjukkan proyek Anda memiliki aset untuk pengidentifikasi runtime khusus versi atau khusus distribusi. Di .NET 8 dan yang lebih tinggi, runtime tidak lagi mempertimbangkan RID khusus versi atau khusus distro secara default dan akan menemukan aset khusus RID menggunakan serangkaian RID portabel yang diketahui. Peringatan akan mencantumkan RID dan paket yang terpengaruh.

Pertama, periksa versi yang lebih baru dari paket yang terpengaruh untuk melihat apakah mereka telah pindah ke RID portabel. Banyak paket telah pindah ke RID portabel dalam versi terbarunya. Jika tidak ada versi seperti itu, sebaiknya hubungi penulis paket untuk meminta pengalihan paket untuk hanya menggunakan RID portabel.

Jika Anda tahu aplikasi Anda tidak benar-benar memerlukan RID yang ditentukan—misalnya, aplikasi tersebut tidak dimaksudkan untuk berjalan pada platform yang ditentukan oleh RID—Anda dapat beralih menggunakan RID yang lebih umum. Misalnya, ubah <RuntimeIdentifier>win10-x64</RuntimeIdentifier> ke <RuntimeIdentifier>win-x64</RuntimeIdentifier> dalam file proyek Anda:

<PropertyGroup>
  ...
  <RuntimeIdentifier>win-x64</RuntimeIdentifier>
</PropertyGroup>

Jika Anda menentukan RID sebagai argumen baris perintah, buat perubahan serupa. Misalnya, alih-alih dotnet publish --framework net8.0 --runtime win10-x64, gunakan perintah dotnet publish --framework net8.0 --runtime win-x64.

Jika Anda perlu kembali ke perilaku sebelumnya menggunakan grafik RID lama dan lengkap, Anda dapat mengatur UseRidGraph properti MSBuild ke true dalam file proyek Anda. Namun, grafik RID lama tidak akan diperbarui di masa depan untuk mencoba menangani distro atau arsitektur lainnya.

<PropertyGroup>
  <UseRidGraph>true</UseRidGraph>
</PropertyGroup>