Bagikan melalui


Kode C# dalam templat tidak didukung oleh versi sebelumnya

Mulai dari .NET 6, templat proyek yang dikirim dengan .NET SDK menggunakan fitur bahasa C# terbaru. Fitur bahasa berikut digunakan dalam kode yang dihasilkan templat atau diaktifkan secara default dalam proyek:

Beberapa fitur bahasa C# terbaru tidak didukung oleh kerangka kerja target sebelumnya, sehingga Anda mungkin mengalami masalah dalam skenario berikut:

  • Saat Anda menggunakan templat .NET 6 lalu mengubah kerangka kerja target ke versi sebelumnya.
  • Saat Anda menggunakan templat .NET 6 lalu multi-target dengan menambahkan versi kerangka kerja target sebelumnya.

Versi yang diperkenalkan

SDK .NET 6.0.100

Perilaku yang lama

Di versi .NET sebelumnya, Anda dapat mengubah kerangka kerja target ke versi sebelumnya atau menambahkan versi tambahan tanpa harus mengubah kode C# yang dibuat oleh templat proyek.

Perilaku yang baru

Mulai dari .NET 6, saat Mengubah atau menambahkan kerangka kerja target, Anda mungkin perlu mengubah kode C# yang dihasilkan oleh templat untuk menghindari penggunaan fitur bahasa yang tidak didukung. Proyek tidak akan dibangun tanpa perubahan ini. Kesalahan dan peringatan kompilator biasanya memandu Anda tentang cara mengubah kode yang dihasilkan agar kompatibel dengan kerangka kerja target baru.

Mengubah kategori

Perubahan ini memengaruhi kompatibilitas sumber.

Alasan untuk berubah

Kami ingin templat proyek disinkronkan dengan fitur bahasa terbaru. Skenario penggunaan utama penargetan kerangka kerja terbaru menggunakan fitur bahasa C# terbaru.

Jika Anda mengalami kesalahan dan peringatan waktu kompilasi saat Anda melakukan penargetan ulang ke versi kerangka kerja sebelumnya, gunakan informasi tersebut untuk memandu Anda mengubah kode yang dihasilkan agar kompatibel dengan kerangka kerja target yang Anda pilih.

Untuk menghindari kesalahan waktu kompilasi saat menargetkan kerangka kerja yang lebih lama, ikuti saran berikut:

  • Hindari mengubah kerangka kerja target ke versi sebelumnya. Sebagai gantinya, pilih kerangka kerja target yang Anda inginkan selama pembuatan proyek di Visual Studio atau di baris perintah dengan menggunakan dotnet new <templateName> --framework <targetFramework>.
  • Saat membuat proyek multi-target, pilih versi kerangka kerja target terendah saat Anda membuat proyek. Tambahkan kerangka kerja target tambahan setelah proyek dibuat.

API yang Terpengaruh

T/A