英語で読む

次の方法で共有


.NET 6 での破壊的変更

アプリを .NET 6 に移行する場合、ここに一覧表示されている破壊的変更が影響する可能性があります。 変更は、ASP.NET Core や Windows フォームなどのテクノロジ領域別にグループ化されています。

この記事では、各破壊的変更が "バイナリ互換" であるか、"ソース互換" であるかを示します。

  • バイナリ互換 - 既存のバイナリは再コンパイルなしで正常に読み込まれて実行され、実行時の動作は変化しません。
  • ソース互換 - 新しいランタイムを対象にしたり、新しい SDK やコンポーネントを使用したりする場合、ソース コードは変更なしで正常にコンパイルされます。

ASP.NET Core

Title バイナリ互換 ソース互換
ActionResult<T> は StatusCode を 200 に設定します ✔️
AddDataAnnotationsValidation メソッドの廃止 ✔️
Microsoft.AspNetCore.App 共有フレームワークから削除されたアセンブリ ✔️
Blazor: RequestImageFileAsync メソッドで変更されたパラメーター名 ✔️
Blazor: WebEventDescriptor.EventArgsType プロパティが置き換えられました
Blazor: バイト配列相互運用 ✔️
Changed MessagePack library in @microsoft/signalr-protocol-msgpack ✔️
ClientCertificate プロパティで HttpSys の再ネゴシエーションがトリガーされない ✔️
EndpointName メタデータが自動的に設定されない ✔️
ID: UI の既定の Bootstrap のバージョンが変更された
Kestrel: 変更されたログ メッセージ属性 ✔️
Microsoft.AspNetCore.Http.Features の分割 ✔️
ミドルウェア:HTTPS リダイレクト ミドルウェアがあいまいな HTTPS ポートで例外をスローする ✔️
ミドルウェア: 新しい Use オーバーロード ✔️
RC 1 での最小限の API の名前変更
RC 2 での最小限の API の名前変更
System.Text.Json を使用すると、MVC で IAsyncEnumerable 型がバッファーされない ✔️
null 許容参照型の注釈の変更 ✔️
古い API と削除された API ✔️
PreserveCompilationContext が既定で構成されない ✔️
Razor: コンパイラによって Views アセンブリが生成されなくなりました ✔️
Razor: ログ ID の変更 ✔️
Razor: 古いとしてマークされた RazorEngine API ✔️
SignalR: Java クライアントの RxJava3 への更新 ✔️
TryParse および BindAsync メソッドが検証される

Containers

タイトル バイナリ互換 ソース互換
コンテナー イメージの既定のコンソール ロガーの書式設定 ✔️

.NET 6 のコンテナーに関するその他の破壊的変更については、「.NET 6 コンテナー リリース ノート」を参照してください。

Core .NET ライブラリ

Title バイナリ互換 ソース互換
既定以外の診断 ID を持つ API の旧型式化 ✔️
null 許容参照型の注釈の変更 ✔️
デバッグ メソッドでの条件付き文字列の評価 ✔️
Windows での Environment.ProcessorCount の動作 ✔️
EventSource コールバックの動作 ✔️ ✔️
Unix 上の File.Replace から Windows と同じ例外がスローされる ✔️
FileStream により Unix 上の共有ロックによってファイルがロックされる ✔️
FileStream でのファイル オフセットと OS の同期を廃止
ReadAsync または WriteAsync の完了後に FileStream.Position が更新される
古い API 用の新しい診断 ID ✔️
新しい System.Linq.Queryable メソッドのオーバーロード ✔️
パッケージから削除された古いバージョンのフレームワーク ✔️
パラメーター名の変更 ✔️
ストリーム派生型のパラメーター名 ✔️
DeflateStream、GZipStream、CryptoStream での部分的な読み取りとゼロバイトの読み取り ✔️
Windows で読み取り専用ファイルにタイムスタンプを設定する ✔️
標準の数値書式の解析精度 ✔️
インターフェイスの静的抽象メンバー ✔️
StringBuilder.Append オーバーロードと評価順序 ✔️
厳密な名前の API によって PlatformNotSupportedException がスローされる ✔️
System.Drawing.Common が Windows でしかサポートされない
System.Security.SecurityContext が古いものとしてマークされる ✔️
Task.FromResult でシングルトンを返すことができる ✔️
BackgroundService からのハンドルされない例外 ✔️

暗号化

配置

タイトル バイナリ互換 ソース互換
64 ビット Windows での x86 ホスト パス ✔️ ✔️

Entity Framework Core

EF Core 6 での破壊的変更

Extensions

グローバリゼーション

Interop

タイトル バイナリ互換 ソース互換
インターフェイスの静的抽象メンバー ✔️

JIT コンパイラ

Title バイナリ互換 ソース互換
ECMA-335 に従って呼び出し引数を強制する ✔️ ✔️

ネットワーク

SDK

シリアル化

Windows フォーム

XML と XSLT

タイトル バイナリ互換 ソース互換
XNodeReader.GetAttribute の無効なインデックスでの動作 ✔️

関連項目