qinjipan 2015-10-20 04:05 采纳率: 0%
浏览 1501

.net中 easyui在mvc过滤器处理报错时怎么跳回到登录界面

.net中 easyui在mvc过滤器处理报错时怎么跳回到登录界面
我用mvc的过滤器做了一个全局的异常处理,前台是用的easyui框架,报错后想跳回登录界面,可是一直跳转不出去求大神帮忙解决
跳转方法:
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new LoginCheckFilterAttribute() { IsCheck = true });//判断是否登录
filters.Add(new MyHandleErrorAttribute());//新建全局的异常处理
}
}
///
/// 处理异常
///
public class MyHandleErrorAttribute : HandleErrorAttribute
{

    public override void OnException(ExceptionContext filterContext)
    {
        base.OnException(filterContext);
        string bcxx = filterContext.Exception.Message;//报错信息
        string bcff = filterContext.Exception.TargetSite.ToString();//报错方法
        string bcdx = filterContext.Exception.Source;//报错对象
        string bcwz = filterContext.Exception.StackTrace;//引发异常位置
       //PublicClass.AddLog("报错信息:"+bcxx+"报错方法:"+bcff+"报错对象:"+bcdx+"报错位置:"+bcwz, 1);//写入报错日志
        string response_js = "<script>window.parent.location.href='~/html/Error.html';</script>";
        filterContext.HttpContext.Response.Redirect("~/html/Error.html");//异常处理界面(友好界面)
        //跳转到登陆页
        //filterContext.HttpContext.Response.Write(response_js); 

    }
}
    视图报错的效果:
        /// <summary>
    /// 职员信息视图
    /// </summary>
    /// <returns></returns>
    public ActionResult WorkersInfo()
    {
        int a = 0;
        int b = 1 / a;
        return View();
    }
            ![图片说明](https://img-ask.csdn.net/upload/201510/20/1445313489_414036.png)
            独立方法的效果:
            public string ces() {
        int a = 0;
        int b = 1 / a;
        return "";
    }![图片说明](https://img-ask.csdn.net/upload/201510/20/1445313657_186858.png)
            两种情况都不能直接跳回框架显示异常信息
  • 写回答

1条回答 默认 最新

  • Go 旅城通票 2015-10-20 06:25
    关注

    在客户端判断下ajax返回值是否包含过滤器抛出的错误内容,包含用location.href进行跳转,服务器端的跳转ajax请求后获取的是跳转后的内容,浏览器是不会自动跳转的

    datagrid增加onLoadError事件

     $('#dg').datagrid({onLoadError:function(xhr){
      var s=xhr.responseText
      alert('服务器端返回内容:'+s);
        if(s.indexOf('超时异常错误信息,或者你的error.html中包含的特殊内容'))location='登录页面'
    });
    
    评论

报告相同问题?

悬赏问题

  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容