ASP.NET Core MVC: 静的ファイルのキャッシュ設定

 機能を実装する前準備を進める。Startup.csファイルを編集していく。.NET Core 2.0によって簡略化された部分があるので、今回は静的ファイルのキャッシュを設定するぐらいで済みそう。

 メソッドConfigureに下記を追記。
Startup.cs

app.UseStaticFiles(new StaticFileOptions
{
OnPrepareResponse = ctx =>
{
ctx.Context.Response.Headers[HeaderNames.CacheControl] =
"public,max-age=2592000";
}
});



 Startup.csの編集のおまけにちょっとルーティングをいじる。今後だがルーティングはコントローラに明示していきたいので下記の通り変更した。ここは好み。
Startup.cs

app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
   ↓
app.UseMvc();

 ルーティングの設定の変更にともなって、コントローラもちょいと変更しておく。アクション名でのルーティングを外したので、アクションに属性でルーティングをつける。
HomeController.cs

[Route("")]
public IActionResult Index()
{
return View();
}


今回までのコミット


 次回は設定値のハードコーディングを避けるための設定をする。

comment: 0