Mvc 异常处理 ajax的 和 不是ajax的!

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MvcApplication1.Controllers
{
    [AttributeUsage(AttributeTargets.Class|AttributeTargets.Method,AllowMultiple=true,Inherited=true)]
    public class HandleAjaxErrorAttribute:FilterAttribute,IExceptionFilter
    {

        public void OnException(ExceptionContext filterContext)
        {

            var errorMsg = filterContext.Exception.Message;
            if (filterContext.HttpContext.Request.IsAjaxRequest())
            {
                filterContext.Result = new JsonResult()
                {
                    Data = errorMsg,
                    JsonRequestBehavior = JsonRequestBehavior.AllowGet
                };
                filterContext.ExceptionHandled = true;
            }
            else
            {

                filterContext.HttpContext.Response.Redirect("Http://www.baidu.com");
                filterContext.ExceptionHandled = true;
            }
        }
    }
}

先新建上面这个类  然后 在Controllers  中加上标签就可以了

时间: 2024-11-05 20:28:24

Mvc 异常处理 ajax的 和 不是ajax的!的相关文章

mvc中使用remote属性来做ajax验证

mvc中使用remote属性来做ajax验证比较容易 : [Remote("Action", "Controller", AdditionalFields = "Currency")] public decimal Amount {get; set;} 生成HTML: <input class="form-control" data-val="true" data-val-number="字

(转)JAVA AJAX教程第四章—AJAX和MVC的简单结合

这里我们再理解了AJAX后,开始来用实例感受AJAX的力量. 今天我最后要实现的效果,当鼠标放到图片上时会根据,会把数据库库里的数据读出,通过显示框显示出来.这个在很多网上商店都有用到这里效果,我们这里用AJAX来实现这个效果.这个实例里结合了MySql.Servlet还有Js,理论性很少,但通过实践来感受理论知识. 一个页面中应用了 AJAX,同时他也能实现MVC框架,可以吗?当然可以的.通过页面调用AJAX,这个页面就是MVC中的V,他用来前台显示与用户交互的内容.用 JavaBean作为M

改变mvc web api 支持android ,ios ,ajax等方式跨域调用

公司一个移动后端的项目用到了 webapi 项目搭建到外网环境共app开发者调用测试接口时遇到了一个问题 接口不允许跨域调用 .查阅资料明白 同源策略原则根据请求报头值 Origin 与回应报头值 Access-Control-Allow-Origin 来判断是否允许调用 解决方法 1.ajax使用jsonp jsonp 是通过请求参数中加入回调函数参数值.webapi 收到回调函数参数值返回数据不再是单纯的json,而是根据回调函数参数值 的js方法调用,这样就避免的同源策略 需要webapi

ASP.NET MVC &amp; WebApi 中实现Cors来让Ajax可以跨域访问 (转载)

什么是Cors? CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing).它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制.本文详细介绍CORS的内部机制. 一.简介 CORS需要浏览器和服务器同时支持.目前,所有浏览器都支持该功能,IE浏览器不能低于IE10. 整个CORS通信过程,都是浏览器自动完成,不需要用户参与.对于开发者来说,CORS通信与同源的AJAX通信没有差别,代

统一的mvc异常处理

mvc异常处理 using System; using System.Configuration; using System.Web.Mvc; using Infrastructure.Exceptions; using log4net; namespace Infrastructure.Web.ActionFilters { /// <summary> /// 统一处理Mvc站点异常过滤器 /// </summary> public class UnifyMvcSiteHandl

ajax 文件上传,ajax

ajax 文件上传,ajax 啥也不说了,直接上代码! <input type="file" id="file" name="myfile" onclick="clearProgressInfo()"/> <span id="progressInfo" style="display:none;"> <progress id="progressBar

ASP.NET MVC异常处理

ASP.NET MVC异常处理方案 如何保留异常前填写表单的数据 ASP.NET MVC中的统一化自定义异常处理 MVC过滤器详解 MVC过滤器使用案例:统一处理异常顺道精简代码 ASP.NET MVC下基于异常处理的完整解决方案

NET MVC异常处理模块

一个简单的ASP.NET MVC异常处理模块 一.前言 异常处理是每个系统必不可少的一个重要部分,它可以让我们的程序在发生错误时友好地提示.记录错误信息,更重要的是不破坏正常的数据和影响系统运行.异常处理应该是一个横切点,所谓横切点就是各个部分都会使用到它,无论是分层中的哪一个层,还是具体的哪个业务逻辑模块,所关注的都是一样的.所以,横切关注点我们会统一在一个地方进行处理.无论是MVC还是WebForm都提供了这样实现,让我们可以集中处理异常. 在MVC中,在FilterConfig中,已经默认

JavaScript之Ajax-7 Ajax跨域请求(Ajax跨域概述、Ajax跨域实现)

一.Ajax跨域概述 同源策略 - 同源策略(Same origin policy)是一种约定,它是浏览器的核心也最最基本的核心.如果少了同源策略,则浏览器的正常功能可能都会收到影响.可以说Web是构建在同源策略基础上的,浏览器只是针对同源策略的一种实现 - 它是由 Netscape 提出的一个著名的安全策略 - 现在所有支持 JavaScript 的浏览器都会使用这个策略 - 所谓同源策略是指,域名.协议.端口相同 域名概述 - 域名(Domain Name) 是由一串用点分隔的名字组成的In

详细解读Jquery各Ajax函数:$.get(),$.post(),$.ajax(),$.getJSON()

一,$.get(url,[data],[callback]) 说明:url为请求地址,data为请求数据的列表(是可选的,也可以将要传的参数写在url里面),callback为请求成功后的回调函数,该函数接受两个参数,第一个为服务器返回的数据,第二个参数为服务器的状态,是可选参数.而其中,服务器返回数据的格式其实是字符串形势,并不是我们想要的json数据格式,在此引用只是为了对比说明. 1 $.get("data.php",$("#firstName.val()")