Razor ランタイムのコンパイルは廃止されており、運用環境のシナリオでは推奨されません。 運用環境のシナリオでは、既定のビルド時コンパイルを使用します。 開発シナリオでは、代わりに ホット リロード を使用してください。
導入されたバージョン
.NET 10 Preview 7
以前の動作
以前は、 Razor ランタイム コンパイル を使用して、アプリケーションの実行中 .cshtml ファイルを再コンパイルできました。 つまり、変更を有効にするためにアプリケーションを再起動する必要はありませんでした。
新しい動作
.NET 10 以降では、 影響を受ける API を使用すると 、診断 ID が ASPDEPR003されたコンパイラ警告が生成されます。
警告ASPDEPR003: Razor ランタイムのコンパイルは廃止されており、運用環境のシナリオでは推奨されません。 運用環境のシナリオでは、既定のビルド時間コンパイルを使用します。 開発シナリオでは、代わりにホット リロードを使用してください。 詳細については、https://aka.ms/aspnet/deprecate/003 を参照してください。
破壊的変更の種類
この変更は、ソースの互換性に影響を与える可能性があります。
変更の理由
Razor ランタイムコンパイルは ホットリロードに置き換えられました。これは、ここ数年推奨されているアプローチです。 この変更により、Razor ランタイム コンパイルでは新機能がサポートされないため、使用しなくなったことが明確になります。
推奨されるアクション
AddRazorRuntimeCompilationの呼び出しを削除し、代わりにホット リロードを使用します。
影響を受ける API
- Microsoft.AspNetCore.Mvc.ApplicationParts.AssemblyPartExtensions
- Microsoft.Extensions.DependencyInjection.RazorRuntimeCompilationMvcBuilderExtensions.AddRazorRuntimeCompilation
- Microsoft.Extensions.DependencyInjection.RazorRuntimeCompilationMvcCoreBuilderExtensions.AddRazorRuntimeCompilation
- Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.FileProviderRazorProjectItem
- Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.MvcRazorRuntimeCompilationOptions
こちらも参照ください
.NET