我正在使用自定义 ActionFilterAttribute,它启动一个NHibernate Session.Transaction
.
我想知道什么时候事先在 Action 中处理了异常,我怎样才能让它打开ActionExceutedContext
,以避免它执行事务提交,而是调用回滚。如果异常未处理,它工作正常。需要为被处理的人提供出路。我不想写回滚,无论我在哪里处理异常。
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
_transactionHelper.BeginTransaction();
base.OnActionExecuting(filterContext);
}
public override void OnActionExecuted(ActionExecutedContext filterContext)
{
if (filterContext.Exception == null)
_transactionHelper.Commit();
base.OnActionExecuted(filterContext);
}