using System.Diagnostics.CodeAnalysis; using SimApi.Exceptions; namespace SimApi.Helpers; public static class SimApiError { /// /// 错误返回 /// /// 错误代码 /// 错误描述(若是常规错误,代码可自动带取描述) /// [DoesNotReturn] public static void Error(int code = 500, string message = "") { throw new SimApiException(code, message); } /// /// 检测条件,根据条件返回报错 如果condition是ture报错 /// /// 检测条件 /// 错误代码 /// 错误描述 public static void ErrorWhen([DoesNotReturnIf(true)] bool condition, int code = 400, string message = "") { if (condition) { Error(code, message); } } /// /// 检测条件,根据条件返回报错 如果condition是ture报错 /// /// 检测条件 /// 错误代码 /// 错误描述 public static void ErrorWhenTrue([DoesNotReturnIf(true)] bool condition, int code = 400, string message = "") { ErrorWhen(condition, code, message); } /// /// 如果condition是false 报错 /// /// /// /// public static void ErrorWhenFalse([DoesNotReturnIf(false)] bool condition, int code = 400, string message = "") { ErrorWhen(!condition, code, message); } /// /// 检测给定的变量是否为NUll /// /// 检测条件 /// 错误代码 /// 错误描述 public static void ErrorWhenNull([NotNull] object? condition, int code = 404, string message = "") { ErrorWhen(condition == null, code, message); } }