私はここ(How to make custom error pages work in ASP.NET MVC 4)またはhttp://benfoster.io/blog/aspnet-mvc-custom-error-pagesここに見つけた可能性のあるすべての方法を試みました:http://www.secretgeek.net/custom_errors_mvcしかし、それは私のために働いているようです。ASP MVC 4でカスタムエラーを有効にする方法はありますか?
私はそれをミニムに簡略化しましたが、存在しないページに当たったときでも醜い標準エラーメッセージが表示されます。
マイError.cshtmlがビューに配置された共有フォルダを\、それは次のようになります。
<div>
<span>Error occurred</span>
</div>
も試してみました:
@model System.Web.Mvc.HandleErrorInfo
@{
ViewBag.Title = "Parking & Ticket Scan Information - Error";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div>
<span>Error occurred</span>
</div>
を私のweb.configファイルが含まれています
<customErrors mode="On" defaultRedirect="~/Error">
<error redirect="~/Error/NotFound" statusCode="404" />
</customErrors>
私も試しました:
<customErrors mode="On" defaultRedirect="~/Error">
</customErrors>
私のErrorControllerの様である:
ルート:
public class ErrorController : Controller
{
[HandleError]
public ViewResult Index()
{
return View();
}
}
([のHandleError]属性を伴うまたは伴わない、
public ViewResult NotFound()
{
Response.StatusCode = 404; //you may want to set this to 200
return View("NotFound");
}
後、私は、Global.asaxのにルーティングも添加してそしてなし.MapRoute( 名前: "PageNotFound"、 URL: "{* url}"、 デフォルト:new {controller = "Error"、action = "Index"、id = Ur lParameter.Optional}
IISにカスタムエラーを表示させるものはありません。他に何をしようとしましたか?もちろん、filters.Add(新しいHandleErrorAttribute())をコメントアウトしました。 Error.cshtmlをViewsフォルダに移動しました。
有効にするために使用できる他の方法はありますか?
私はBen Fosterのソリューションを試してみました。私が試した他の解決策のいくつかは、IISが最初にエラーを傍受した場合には機能しません。その場合、あなたのアプリケーションはエラーを処理せず、デフォルトのものを見るでしょう。 – Jasen