.NET 11 のモバイル ワークロードで、サポートされているランタイムとして CoreCLR が使用されます。
導入されたバージョン
.NET 11
以前の動作
.NET 10に対応したAndroid、iOS、tvOS、Mac Catalyst プロジェクトでは、デフォルトで Mono が使用されていました。 プロジェクトでは、Mono を選択するように UseMonoRuntime=true を設定できます。
アプリとツールでは、ランタイム情報、パッケージ ファイル、スタック トレース、シンボル、診断イベントに Mono 名が表示される場合があります。
新しい動作
サポートされている .NET 11 Android、iOS、tvOS、Mac Catalyst プロジェクトでは CoreCLR が使用されます。
UseMonoRuntime=trueを設定すると、ビルド エラー NETSDK1242 が発生します。
アプリやツールは、新しいランタイム名を認識できるようになります。 例:
- FrameworkDescription では、Mono ではなく .NET と報告されます。
- Android パッケージには、
libmonosgen-2.0の代わりに CoreCLR ファイルが含まれています。 - スタック トレース、シンボル、診断イベントによって CoreCLR が識別されます。
破壊的変更の種類
この変更は、ソースの互換性、バイナリの互換性、および動作に影響する可能性があります。
変更理由
.NET 11 のモバイル ワークロードで、サポートされているランタイムとして CoreCLR が使用されます。
推奨されるアクション
- .NET 11 プロジェクトから
UseMonoRuntime=trueを削除します。 - アプリで Mono を使用する必要がある場合は、アプリは .NET 10 のままにしてください。
- Mono パッケージ ファイル、シンボル、スタック フレーム、または診断名を検索するツールを更新します。
- ランタイムが Mono か CoreCLR かをチェックするコードを追加しないでください。 その代わりに、アプリに必要な機能があるかどうかを確認します。
影響を受ける API
- FrameworkDescription では、Mono ではなく .NET と報告されます。
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET