У меня есть пользовательский фильтр исключений, который я использую, чтобы перехватить пользовательское исключение, которое я написал, но по какой-то причине, когда я выбрасываю свое исключение, оно никогда не попадает в фильтр. Вместо этого я просто получаю сообщение об ошибке, что мое исключение не было обработано кодом пользователя. Кто-нибудь может дать какой-нибудь совет / помощь относительно того, как мне это настроить? Соответствующий код ниже:
// controller
[CustomExceptionFilter]
public class SomeController : Controller
{
public SomeController()
{
}
public ActionResult Index()
{
SomeClass.SomeStaticMethod();
return View();
}
}
это контроллер с атрибутом customexception
// some class (where exception is being thrown)
public class SomeClass
{
public static void SomeStaticMethod()
{
throw new MyCustomException("Test");
}
}
это класс (для моего теста), который генерирует исключение (я также пытался выбросить его непосредственно на контроллер).
// Custom exception filter (want this to catch all unhandled exceptions)
public class CustomExceptionFilter : FilterAttribute, IExceptionFilter
{
public void OnException(ExceptionContext filterContext)
{
if (filterContext.Exception.GetType() == typeof(MyCustomException))
{
// do stuff
}
}
}
это пользовательский фильтр исключений ... он никогда не достигается при выполнении кода и создании исключения. Вместо этого я получаю ошибку, упомянутую выше. Все, что я прочитал, указывает на то, что это правильный способ установить это, но когда я ставлю точки останова в моем настраиваемом фильтре, он никогда не срабатывает ...
Что мне здесь не хватает?
ТИА