によるとドキュメントデフォルトでは、ASP.NET Core 3.0 のローカル環境での変更時に Razor ビューが再コンパイルされる必要があります。
ただし、私のプロジェクトではローカルではこれが実行されません。ローカルでデバッグしているときにビューを変更して更新しても、変更は反映されません。ソリューションを停止して再実行し、変更を確認する必要があります。
私は、Razor ページを使用して、ASP.NET Core 3.0.0 Preview 2 を搭載した Visual Studio 2019 の既定の ASP.NET Core Web アプリケーション テンプレートでこれを実行しています。この機能を有効にするには設定を変更する必要があるかどうか、ご存知ですか?
ベストアンサー1
ASP.NET Core 3 リリース バージョンの場合:
services.AddControllersWithViews().AddRazorRuntimeCompilation();
https://learn.microsoft.com/en-us/aspnet/core/mvc/views/view-compilation?view=aspnetcore-3.0
リンクから引用すると、ローカル開発の場合のみ条件付きで有効にすることもできます。
ランタイム コンパイルは、ローカル開発でのみ使用できるように有効にすることができます。この方法で条件付きで有効にすると、公開された出力は次のようになります。
コンパイルされたビューを使用します。
サイズが小さくなります。
運用環境ではファイル ウォッチャーは有効になりません。
public Startup(IConfiguration configuration, IWebHostEnvironment env)
{
Configuration = configuration;
Env = env;
}
public IWebHostEnvironment Env { get; set; }
public IConfiguration Configuration { get; }
public void ConfigureServices(IServiceCollection services)
{
IMvcBuilder builder = services.AddRazorPages();
#if DEBUG
if (Env.IsDevelopment())
{
builder.AddRazorRuntimeCompilation();
}
#endif
}