Bagikan melalui


Melanggar perubahan di .NET 8

Jika Anda memigrasikan aplikasi ke .NET 8, perubahan melanggar yang tercantum di sini mungkin memengaruhi Anda. Perubahan dikelompokkan berdasarkan bidang teknologi, seperti ASP.NET Core atau Formulir Windows.

Artikel ini mengategorikan setiap perubahan yang melanggar karena biner tidak kompatibel atau sumber tidak kompatibel, atau sebagai perubahan perilaku:

  • Biner tidak kompatibel - Saat dijalankan terhadap runtime atau komponen baru, biner yang ada mungkin mengalami perubahan perilaku yang melanggar, seperti kegagalan memuat atau mengeksekusi, dan jika demikian, memerlukan kompilasi ulang.

  • Sumber tidak kompatibel - Saat dikompilasi ulang menggunakan SDK atau komponen baru atau untuk menargetkan runtime baru, kode sumber yang ada mungkin memerlukan perubahan sumber agar berhasil dikompilasi.

  • Perubahan perilaku - Kode dan biner yang ada mungkin berperilaku berbeda pada waktu proses. Jika perilaku baru tidak diinginkan, kode yang ada perlu diperbarui dan dikompilasi ulang.

Inti ASP.NET

Judul Jenis perubahan
ConcurrencyLimiterMiddleware sudah usang Sumber tidak kompatibel
Pengonversi kustom untuk serialisasi dihapus Perubahan perilaku
ISystemClock sudah usang Sumber tidak kompatibel
API Minimal: Parameter IFormFile memerlukan pemeriksaan anti-pemalsuan Perubahan perilaku
Middleware pembatasan laju memerlukan AddRateLimiter Perubahan perilaku
Peristiwa token keamanan mengembalikan JsonWebToken Perubahan perilaku
Default TrimMode menjadi penuh untuk proyek Web SDK Sumber tidak kompatibel

Kontainer

Judul Jenis perubahan
Paket 'ca-certificates' dihapus dari gambar Alpine Biner tidak kompatibel
Gambar kontainer Debian ditingkatkan ke Debian 12 Perubahan biner tidak kompatibel/perilaku
Port default ASP.NET Core diubah menjadi 8080 Perubahan perilaku
Paket Kerberos dihapus dari gambar Alpine dan Debian Biner tidak kompatibel
Paket 'libintl' dihapus dari gambar Alpine Perubahan perilaku
Tag kontainer multi-platform hanya untuk Linux Perubahan perilaku
Pengguna 'aplikasi' baru di gambar Linux Perubahan perilaku

Pustaka .NET Inti

Judul Jenis perubahan
Nama operasi aktivitas ketika null Perubahan perilaku
Perilaku AnonymousPipeServerStream.Dispose Perubahan perilaku
KEDALUARSA API dengan ID diagnostik kustom Sumber tidak kompatibel
Pemetaan garis miring terbalik di jalur file Unix Perubahan perilaku
Metode Base64.DecodeFromUtf8 mengabaikan spasi kosong Perubahan perilaku
Dukungan jenis enum yang didukung Boolean dihapus Perubahan perilaku
Format Complex.ToString diubah menjadi <a; b> Perubahan perilaku
Enumerasi jalur direktori drive saat ini Perubahan perilaku
Enumerable.Sum melempar OverflowException baru untuk beberapa input Perubahan perilaku
FileStream menulis ketika pipa ditutup Perubahan perilaku
FindSystemTimeZoneById tidak mengembalikan objek baru Perubahan perilaku
GC. GetGeneration mungkin mengembalikan Int32.MaxValue Perubahan perilaku
Perilaku GetFolderPath di Unix Perubahan perilaku
GetSystemVersion tidak lagi mengembalikan ImageRuntimeVersion Perubahan perilaku
Anotasi ITypeDescriptorContext nullable Sumber tidak kompatibel
Legacy Console.ReadKey dihapus Perubahan perilaku
Penyusun metode menghasilkan parameter dengan HasDefaultValue diatur ke false Perubahan perilaku
ProcessStartInfo.WindowStyle yang dihormati saat UseShellExecute salah Perubahan perilaku
RuntimeIdentifier mengembalikan platform yang runtimenya dibuat Perubahan perilaku
Type.GetType melempar pengecualian untuk semua jenis elemen yang tidak valid Perubahan perilaku

Kriptografi

Judul Jenis perubahan Pengenalan
Ukuran tag autentikasi AesGcm di macOS Perubahan perilaku Pratinjau 1
RSA. EncryptValue dan RSA. DecryptValue usang Sumber tidak kompatibel Pratinjau 1

Penyebaran

Judul Jenis perubahan
Host menentukan aset khusus RID Perubahan biner tidak kompatibel/perilaku
.NET Monitor hanya menyertakan gambar distroless Perubahan perilaku
StripSymbols default ke true Perubahan perilaku

Entity Framework Core

Memutus perubahan di EF Core 8

Ekstensi

Judul Jenis perubahan
ActivatorUtilities.CreateInstance bereaksi secara konsisten Perubahan perilaku
ActivatorUtilities.CreateInstance memerlukan penyedia non-null Perubahan perilaku
ConfigurationBinder melemparkan untuk nilai yang tidak cocok Perubahan perilaku
Paket ConfigurationManager tidak lagi mereferensikan System.Security.Permissions Sumber tidak kompatibel
Paket DirectoryServices tidak lagi mereferensikan System.Security.Permissions Sumber tidak kompatibel
Kunci kosong ditambahkan ke kamus menurut pengikat konfigurasi Perubahan perilaku
HostApplicationBuilderSettings.Args dihormati oleh hostApplicationBuilder ctor Perubahan perilaku
ManagementDateTimeConverter.ToDateTime mengembalikan waktu lokal Perubahan perilaku
Perubahan pemformatan System.Formats.Cbor DateTimeOffset Perubahan perilaku

Globalisasi

Judul Jenis perubahan
Pengonversi tanggal dan waktu menghormati argumen budaya Perubahan perilaku
Default TwoDigitYearMax adalah 2049 Perubahan perilaku

Interop

Judul Jenis perubahan
CreateObjectFlags.Unwrap hanya membuka bungkus pada instans target Perubahan perilaku
Marshaller kustom memerlukan anggota tambahan Sumber tidak kompatibel
API IDispatchImplAttribute dihapus Biner tidak kompatibel
JSFunctionBinding konstruktor default publik implisit dihapus Biner tidak kompatibel
Jenis SafeHandle harus memiliki konstruktor publik Sumber tidak kompatibel

Jaringan

Judul Jenis perubahan
SendFile melempar NotSupportedException untuk soket tanpa koneksi Perubahan perilaku
Info pengguna dalam mailto: URI dibandingkan Perubahan perilaku

Refleksi

Judul Jenis perubahan
IntPtr tidak lagi digunakan untuk jenis penunjuk fungsi Perubahan perilaku

SDK

Judul Jenis perubahan
Output konsol CLI menggunakan UTF-8 Perubahan perilaku/Sumber dan biner tidak kompatibel
Pengodean konsol bukan UTF-8 setelah selesai Perubahan perilaku/Biner tidak kompatibel
Default kontainer untuk menggunakan tag 'terbaru' Perubahan perilaku
'dotnet pack' menggunakan konfigurasi Rilis Perubahan perilaku/Sumber tidak kompatibel
'dotnet publish' menggunakan konfigurasi Rilis Perubahan perilaku/Sumber tidak kompatibel
Output duplikat untuk -getItem, -getProperty, dan -getTargetResult Perubahan perilaku
Implisit using untuk System.Net.Http tidak lagi ditambahkan Perubahan perilaku/Sumber tidak kompatibel
Peristiwa build turunan kustom MSBuild tidak digunakan lagi Perubahan perilaku
MSBuild menghormati DOTNET_CLI_UI_LANGUAGE Perubahan perilaku
Aplikasi khusus runtime tidak mandiri Sumber/biner tidak kompatibel
Opsi --arch tidak menyiratkan mandiri Perubahan perilaku
'pemulihan dotnet' menghasilkan peringatan kerentanan keamanan Perubahan perilaku
SDK menggunakan grafik RID yang lebih kecil Perubahan perilaku/Sumber tidak kompatibel
Mengatur DebugSymbols ke false menonaktifkan pembuatan PDB Perubahan perilaku
Tautan Sumber disertakan dalam .NET SDK Sumber tidak kompatibel
Pemangkasan mungkin tidak digunakan dengan .NET Standard atau .NET Framework Perubahan perilaku
Paket yang tidak tercantum tidak diinstal secara default untuk alat .NET Perubahan perilaku
File .user yang diimpor di build luar Perubahan perilaku
Persyaratan versi untuk .NET 8 SDK Sumber tidak kompatibel

Serialisasi

Judul Jenis perubahan
BinaryFormatter dinonaktifkan untuk sebagian besar proyek Perubahan perilaku
Proyek PublishedTrimmed gagal serialisasi berbasis refleksi Perubahan perilaku
Deserializer berbasis refleksi menyelesaikan metadata dengan bersemangat Perubahan perilaku

Formulir Windows

Judul Jenis perubahan
Cert dicentang sebelum memuat gambar jarak jauh di PictureBox Perubahan perilaku
DateTimePicker.Text adalah string kosong Perubahan perilaku
DefaultValueAttribute dihapus dari beberapa properti Perubahan perilaku
Ctor ExceptionCollection melempar ArgumentException Perubahan perilaku
Skala formulir sesuai dengan AutoScaleMode Perubahan perilaku
Default ImageList.ColorDepth adalah Depth32Bit Perubahan perilaku
System.Windows.Extensions tidak mereferensikan System.Drawing.Common Sumber tidak kompatibel
TableLayoutStyleCollection melempar ArgumentException Perubahan perilaku
Formulir tingkat atas menskalakan ukuran minimum dan maksimum ke DPI Perubahan perilaku
WFDEV002 kedaluarsa sekarang menjadi kesalahan Sumber tidak kompatibel

Lihat juga