asp.net-mvc - 使用 ExceptionFilter 重定向到操作

标签 asp.net-mvc asp.net-mvc-4 action-filter

我创建了一个 ExceptionFilter:

 public class LogException : FilterAttribute, IExceptionFilter
 {

    void IExceptionFilter.OnException(ExceptionContext filterContext)
    {
        Utility.Log.LogMe(filterContext.Exception);
        filterContext.ExceptionHandled = true;
    }
}

每当点击此方法时,我都想将用户重定向到登录页面。
我怎样才能做到这一点?

最佳答案

重要的是您的 ExceptionHandled分配留在那里,这是一个很好的调用,但也重定向:

        filterContext.Result = new RedirectToRouteResult(
                new RouteValueDictionary 
                { 
                    { "controller", "Account" }, 
                    { "action", "LogIn" } 
                });
        };

关于asp.net-mvc - 使用 ExceptionFilter 重定向到操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38326193/

相关文章:

c# - 在 ASP.NET Core Razor 应用程序中使用相同模型在数据库中创建多个表

c# - MVC4 可扩展插件架构

asp.net-mvc - Windows Workflow Foundation 4 和 ASP.NET MVC

c# - MVC Action 过滤器和多线程

c# - MVC 3压缩过滤器导致乱码输出

attributes - Nunit Action 属性构造函数被多次调用

asp.net-mvc - 引用不同版本的 Json.NET dll

c# - 使用查询字符串 MVC 将数组传递给 View

asp.net - TempData 实现更改 - 更改原因

c# - RouteValueDictionary 值在 POST 上从字符串更改为数组