當我調用Exception Filter時,我希望仍然會調用控制器中的預期操作。我已經創建了以下個IExceptionFilter:如何允許自定義ExceptionFilter在異常期間繼續調用指定的操作方法
public class ArgumentExceptionFilter : FilterAttribute, IExceptionFilter
{
public void OnException(ExceptionContext filterContext)
{
if (filterContext.Exception.GetType() == typeof(System.ArgumentException))
{
//Some logic to create a default "SettingsRoot" parameter
//This simply surpresses MVC from raising exception
filterContext.ExceptionHandled = true;
}
}
}
和該過濾器被應用到該控制器的操作方法:
[ArgumentExceptionFilter]
public ActionResult MyActionMethod(SettingsRoot settings)
{
ActionResult actionResult = null;
//Do stuff with settings
return actionResult;
}
我想有「MyActionMethod()」如果我們得到一個可以不管叫觸發ExceptionFilter的異常。我也嘗試使用「RedirectToRouteResult()」方法,但沒有奏效。 有什麼建議嗎?
it _is_被調用,並且異常發生在它內部的某處。 – solidau