namespace MyApp.Web.Models { using System; using System.Web.Mvc; [AttributeUsage(AttributeTargets.Method)] public class AjaxOnlyAttribute : ActionFilterAttribute { public override void OnActionExecuting(ActionExecutingContext filterContext) { if (!filterContext.HttpContext.Request.IsAjaxRequest()) { filterContext.HttpContext.Response.StatusCode = 404; filterContext.Result = new HttpNotFoundResult(); } else { base.OnActionExecuting(filterContext); } } } }