我正在为 asp.net mvc 学习 elmah。我用最新的 nuget 包安装了 elmah,用于 elmah 和 mvc。我已将其配置为使用 elmah 日志记录页面,并将错误记录在 sql 表中。我将 elmah 脚本与 sql 一起使用。我的问题是它似乎在任何地方都可以使用,除了部分视图。这是我继承的一个项目,所以我正在学习它是如何工作的。如果 Elmah 没有在部分视图中发现 404 错误或异常,我需要做些什么或查看一些额外的东西吗?我得到了 asp.net mvc 标准 404 错误页面,而不是我创建的用于 elmah 的错误页面,并且它没有记录在任何地方。
这是我的一些代码:
我的 FilterConfig.cs 包括以下内容
public class FilterConfig
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleAndLogErrorAttribute());
}
}
public class HandleAndLogErrorAttribute : HandleErrorAttribute
{
public override void OnException(ExceptionContext filterContext)
{
// Log the filterContext.Exception details
base.OnException(filterContext);
}
}
我的 ErrorController.cs 类
public class ErrorController : Controller
{
// The 404 action handler
// Get: /FailSafe/
public ActionResult FailSafe()
{
Response.StatusCode = 404;
Response.TrySkipIisCustomErrors = true;
return View();
}
}
任何想法或方向将不胜感激。