В ASP.NET MVC я перезаписываю OnException, так что я могу сделать некоторую настраиваемую обработку ошибок для исключений. Одна вещь, которую я хотел бы сделать здесь, это войти из какой области в веб-приложении произошла ошибка.
Например, у нас есть веб-магазин и области администрирования в веб-приложениях. Затем я хотел бы определить, происходит ли исключение от контроллера веб-магазина или контроллера администрирования. Вот что у меня есть:
protected override void OnException(ExceptionContext filterContext)
{
if (filterContext.Exception != null)
{
ErrorTargetType targetErrorType = ErrorTargetType.DipService;
if (filterContext.Controller is CatalogController)
targetErrorType = ErrorTargetType.WebshopInterface;
LogException(filterContext.Exception, targetErrorType);
}
base.OnException(filterContext);
}
Работает нормально, но я бы хотел сделать оператор if для набора установленных контроллеров администрирования. Имеет ли ASP.NET MVC некоторую стандартную функциональность, которая обеспечивает все контроллеры в веб-приложении в коллекции, если да, то как отделить контроллеры Webshop от контроллеров администрирования?