Я не впевнений у 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());
.
Тепер ви можете ловити всі вхідні запити та змінювати їх.