我已經嘗試了很多方法,但仍然無法完成。 只是在請求無效時顯示404/500。MVC簡單錯誤處理BadRequest
例如,沒有用戶ID = 100,如果有人提出這個請求,它應該返回404.另一方面,拋出500,如果發生服務器錯誤。
我想要這種行爲來應用整個應用程序。
public ActionResult EditUser(int Id)
{
var db = new UserDbContext();
var usr = db.Users.Where(a => a.Id == Id).SingleOrDefault();
if (usr == null) return new HttpStatusCodeResult(HttpStatusCode.NotFound, "User not found");
return View(usr);
}
與webconfig的System.Web中
<customErrors mode="On" redirectMode="ResponseRewrite" defaultRedirect="~/General">
<error statusCode="404" redirect="~/NotFound" />
<error statusCode="403" redirect="~/BadRequest" />
</customErrors>
和system.webserver
<httpErrors existingResponse="PassThrough"></httpErrors>
試了很多組合的方式,不能使它發揮作用。 我得到的結果是一個空白頁面,然後瀏覽器控制檯顯示404/500錯誤。但我希望它在頁面上顯示。
有人可以請指出我的錯誤。由於
檢查是否是因爲web.config中的http://計算器。 com/questions/4483849/default-redirect-for-error-404 –