微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net-mvc-4 – MVC 4中的HttpContext.Current.Request.IsAjaxRequest()错误

我在用
HttpContext.Current.Request.IsAjaxRequest()

在Application_Error方法中检查global.asax中的ajax请求的条件,但是我收到以下错误

‘System.Web.HttpRequest’ does not contain a deFinition for
‘IsAjaxRequest’ and the best extension method overload
‘System.Web.Mvc.AjaxRequestExtensions.IsAjaxRequest(System.Web.HttpRequestBase)’
has some invalid arguments

以下是代码

void Application_Error(object sender,EventArgs e)
    {

        Exception exception = Server.GetLastError().GetBaseException();
        HttpException httpException = exception as HttpException;

        string ErrorMessage = "";
        ErrorMessage = "Application Level Error";


        logger.Error(ErrorMessage,exception);

        if (System.Web.HttpContext.Current.Request.IsAjaxRequest()) //if its an ajax do not redirect
        {
            return;
        }
    else
    {
      Server.ClearError();
      this.Response.RedirectToRoute("Default",new { controller = "Home",action = "Error" });
    }
  }

解决方法

猜猜它有用……发布作为答案.

尝试

new HttpRequestWrapper(System.Web.HttpContext.Current.Request).IsAjaxRequest()

IsAjaxRequest()接受一个与HttpRequest不同的HttpRequestBase(并且不相关,所以它有点令人困惑).我认为包装器将解决您的问题.

原文地址:https://www.jb51.cc/aspnet/251950.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐