Я не впевнений у MVC4, але я думаю, що він досить схожий на MVC5. Якщо ви створили новий веб-проект -> загляньте, Global.asaxі ви побачите наступний рядок FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);у методі Application_Start().
RegisterGlobalFilters- це метод у файлі, який FilterConfig.csзнаходиться в папці App_Start.
Як сказав @ YngveB-Nilsen, ActionFilterAttributeна мій погляд, це шлях. Додайте новий клас, що походить від System.Web.Mvc.ActionFilterAttribute. Це важливо, оскільки System.Web.Http.Filters.ActionFilterAttributeне вдасться, наприклад, з наступним винятком.
Даний екземпляр фільтра повинен реалізовувати один або кілька з таких інтерфейсів фільтра: System.Web.Mvc.IAuthorizationFilter, System.Web.Mvc.IActionFilter, System.Web.Mvc.IResultFilter, System.Web.Mvc.IExceptionFilter, System.Web .Mvc.Filters.IAuthenticationFilter.
Приклад, який записує запит у вікно налагодження:
public class DebugActionFilter : System.Web.Mvc.ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext actionContext)
{
Debug.WriteLine(actionContext.RequestContext.HttpContext.Request);
}
}
У FilterConfig-> RegisterGlobalFilters-> додайте такий рядок:filters.Add(new DebugActionFilter()); .
Тепер ви можете ловити всі вхідні запити та змінювати їх.