4

ASP.NET MVC4 アプリケーションで ELMAH.MVC の最新バージョンを使用しています。エラーをログに記録していますが、カスタム エラー ページを表示したいです。そこで、ErrorController と ErrorView を作成しました (以下を参照)。

私が理解できないのは、ELMAH.MVC を、キャッチされていない例外のカスタム エラー ページに移動させる方法です。さらに、カスタム タイトルとエラー メッセージを表示したいと考えています。web.config に「customError」がありません。

この質問であなたの助けを本当に感謝します...

ありがとう、

マイク

// ELMAH Configuration
<add key="elmah.mvc.disableHandler" value="false" />
<add key="elmah.mvc.disableHandleErrorFilter" value="false" />
<add key="elmah.mvc.requiresAuthentication" value="true" />
<add key="elmah.mvc.allowedRoles" value="ABitOfHelp" />
<add key="elmah.mvc.route" value="elmah" />


// My Error Controller
/// <summary>
/// Logs errors.
/// </summary>
public class ErrorController : Controller
{
    /// <summary>
    /// Logs JavaScript errors.
    /// </summary>
    /// <param name="message"></param>
    [HttpPost]
    public ActionResult LogJavaScriptError(string message)
    { 
        ErrorSignal.FromCurrentContext().Raise(new JavaScriptException(message));
        ViewBag.Message = message;
        ViewBag.Title = XXXXX.Shared.Properties.Resources.Title_ErrorInformation;
        return View("Error");
    }
}

// My Error View

@{}

<h2>@ViewBag.Title</h2>
<h3>@ViewBag.Message</h3>
4

1 に答える 1

0

web.config に次の行を追加する必要があります。

 <system.web>
    <customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/>
</system.web>

mycustompage.htm は、コントローラーまたはページへのパスです。

于 2013-07-02T15:28:10.820 に答える