2012-01-28 52 views
2

如何創建只能匹配AJAX請求的自定義路由約束?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? 
    } 
} 

回答

4

如果您添加到您的路由約束,並在httpContext.Request.IsAjaxRequest()工作?

using System.Web.Mvc; 

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

+0

謝謝。知道我忽略了一些簡單的東西。 – Mark 2012-01-29 02:20:56