namespace XFEExtension.NetCore.Exceptions;
///
/// 流程控制:停止并执行方法
///
public class StopAction : Exception
{
///
/// 执行方法并抛出异常
///
/// 需要执行的方法
/// 异常消息
public StopAction(Action stopAction, string? message = null) : base(message) => stopAction.Invoke();
///
/// 执行方法并抛出异常
///
/// 需要执行的方法
/// 异常消息
/// 内部错误
public StopAction(Action stopAction, string? message, Exception? innerException) : base(message, innerException) => stopAction.Invoke();
///
/// 执行异步方法并抛出异常
///
/// 需要执行的方法
/// 异常消息
public StopAction(Func stopAction, string? message = null) : base(message) => stopAction.Invoke().Wait();
///
/// 执行异步方法并抛出异常
///
/// 需要执行的方法
/// 异常消息
/// 内部错误
public StopAction(Func stopAction, string? message, Exception? innerException) : base(message, innerException) => stopAction.Invoke().Wait();
}