Číst v angličtině

Sdílet prostřednictvím


Zásadní změny v .NET 6

Pokud migrujete aplikaci na .NET 6, můžou vás tyto zásadní změny ovlivnit. Změny jsou seskupené podle oblasti technologií, jako je ASP.NET Core nebo model Windows Forms.

Tento článek označuje, jestli je každá změna způsobující chybu binární kompatibilní nebo zdroj kompatibilní:

  • Binární kompatibilní – Existující binární binární soubory se načtou a úspěšně se spustí bez rekompilace a chování za běhu se nezmění.
  • Kompatibilní se zdrojem – Zdrojový kód se úspěšně zkompiluje beze změn při cílení na nový modul runtime nebo pomocí nové sady SDK nebo komponenty.

ASP.NET Core

Nadpis Binární kompatibilní Kompatibilní se zdrojem
ActionResult<T> nastaví StatusCode na 200 ✔️
Metoda AddDataAnnotationsValidations Zastaralá ✔️
Sestavení odebraná ze sdílené architektury Microsoft.AspNetCore.App ✔️
Blazor: Název parametru změněný v metodě RequestImageFileAsync ✔️
Blazor: Vlastnost WebEventDescriptor.EventArgsType byla nahrazena
Blazor: Interoperabilita pole bajtů ✔️
Changed MessagePack library in @microsoft/signalr-protocol-msgpack ✔️
Vlastnost ClientCertificate neaktivuje opakované vyjednávání pro HttpSys. ✔️
Metadata endpointName se nenastaví automaticky ✔️
Identita: Změna výchozí verze uživatelského rozhraní bootstrap
Kestrel: Změněné atributy zpráv protokolu ✔️
Rozdělení funkcí Microsoft.AspNetCore.Http.Features ✔️
Middleware: Middleware přesměrování HTTPS vyvolává výjimku na nejednoznačných portech HTTPS ✔️
Middleware: New Use přetížení ✔️
Minimální přejmenování rozhraní API ve verzi RC 1
Minimální přejmenování rozhraní API ve verzi RC 2
MVC při použití System.Text.Json neuchovává do vyrovnávací paměti typy IAsyncEnumerable ✔️
Změněné poznámky typu odkazu s možnou hodnotou Null ✔️
Zastaralá a odebraná rozhraní API ✔️
Funkce PreserveCompilationContext není ve výchozím nastavení nakonfigurovaná ✔️
Razor: Kompilátor už nevygeneruje sestavení Zobrazení. ✔️
Razor: Změny ID protokolování ✔️
Razor: Zastaralá rozhraní API RazorEngine ✔️
SignalR: Klient Java se aktualizoval na RxJava3 ✔️
Ověřují se metody TryParse a BindAsync.

Kontejnery

Nadpis Binární kompatibilní Kompatibilní se zdrojem
Výchozí formátování protokolovacího nástroje konzoly v imagích kontejnerů ✔️

Informace o dalších zásadních změnách kontejnerů v .NET 6 najdete v poznámkách k verzi kontejneru .NET 6.

Knihovny Core .NET

Nadpis Binární kompatibilní Kompatibilní se zdrojem
Obsoletions rozhraní API s ne defaultním diagnostickým ID ✔️
Změny poznámek typu odkazu s možnou hodnotou null ✔️
Vyhodnocení podmíněného řetězce v metodách ladění ✔️
Chování Environment.ProcessorCount ve Windows ✔️
Chování zpětného volání EventSource ✔️ ✔️
File.Replace v systému Unix vyvolává výjimky odpovídající systému Windows. ✔️
FileStream uzamkne soubory se sdíleným zámkem v unixovém systému Unix. ✔️
FileStream už nesynchronizuje posun souboru s operačním systémem
Aktualizace FileStream.Position po dokončení operace ReadAsync nebo WriteAsync
Nová diagnostická ID pro zastaralá rozhraní API ✔️
Přetížení nové metody System.Linq.Queryable ✔️
Starší verze architektury vyřazené z balíčku ✔️
Změněné názvy parametrů ✔️
Názvy parametrů v odvozených typech Streamu ✔️
Částečná a nulová bajtová čtení v deflateStream, GZipStream a CryptoStream ✔️
Nastavení časového razítka u souboru jen pro čtení ve Windows ✔️
Standardní přesnost analýzy číselného formátu ✔️
Statické abstraktní členy v rozhraních ✔️
StringBuilder.Append přetížení a pořadí vyhodnocení ✔️
Rozhraní API silného názvu vyvolává výjimku PlatformNotSupportedException ✔️
System.Drawing.Common se podporuje jenom ve Windows
System.Security.SecurityContext je označený jako zastaralý. ✔️
Task.FromResult může vrátit singleton ✔️
Neošetřené výjimky ze služby BackgroundService ✔️

Kryptografie

Nadpis Binární kompatibilní Kompatibilní se zdrojem
Metody CreateEncryptor vyvolávají výjimku kvůli nesprávné velikosti zpětné vazby ✔️

Nasazení

Nadpis Binární kompatibilní Kompatibilní se zdrojem
Cesta hostitele x86 v 64bitovém systému Windows ✔️ ✔️

Entity Framework Core

Zásadní změny v EF Core 6

Rozšíření

Globalizace

Nadpis Binární kompatibilní Kompatibilní se zdrojem
Vytvoření jazykové verze a mapování případů v režimu globalizace invariantní

Zprostředkovatel komunikace

Nadpis Binární kompatibilní Kompatibilní se zdrojem
Statické abstraktní členy v rozhraních ✔️

Kompilátor JIT

Nadpis Binární kompatibilní Kompatibilní se zdrojem
Přepojit argumenty volání podle ECMA-335 ✔️ ✔️

Sítě

Sada SDK

Serializace

Windows Forms

XML a XSLT

Nadpis Binární kompatibilní Kompatibilní se zdrojem
Chování XNodeReader.GetAttribute pro neplatný index ✔️

Viz také