用于AJAX请求的ASP.NET MVC自定义路由约束

时间:2012-01-28 23:41:25

标签: asp.net-mvc

如何创建仅匹配AJAX请求的自定义路由约束?

在控制器中,我可以使用Request.IsAjaxRequest()

如何从自定义约束中访问IsAjaxRequest?我已经实现了IRouteConstraint接口和Match()方法,如下所示:

public class IsAjaxConstraint : IRouteConstraint
{
    public bool Match(HttpContextBase httpContext,
                      Route route, 
                      string parameterName,
                      RouteValueDictionary values,
                      RouteDirection routeDirection)
    {            
     // How can I check for an Ajax request here?
    }
}

1 个答案:

答案 0 :(得分:5)

如果将此添加到路径约束中,httpContext.Request.IsAjaxRequest()是否有效?

using System.Web.Mvc;

Request.IsAjaxRequest()是System.Web.Mvc中的扩展方法。