Throw 404 when blog post fails to load.

This commit is contained in:
Robert Marshall 2019-04-28 11:51:42 +01:00
parent 40e8899368
commit 6c905f177f
2 changed files with 9 additions and 5 deletions

View file

@ -30,9 +30,13 @@ namespace Website.Controllers
public async Task<IActionResult> Entry(string url)
{
var post = await _repo.GetPostByUrlAsync(url);
var model = new BlogPostViewModel(post);
return View(model);
try {
var post = await _repo.GetPostByUrlAsync(url);
var model = new BlogPostViewModel(post);
return View(model);
} catch (InvalidOperationException e) {
return NotFound();
}
}
}
}

View file

@ -40,18 +40,18 @@ namespace Website
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
if (env.IsDevelopment() )
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Error/ServerError");
app.UseStatusCodePagesWithReExecute("/Error/PageNotFound");
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
}
app.UseStatusCodePagesWithReExecute("/Error/PageNotFound");
app.UseHttpsRedirection();
app.UseStaticFiles();