/// <summary> /// 创建基础异常 /// </summary> /// <param name="result">验证结果</param> private static TException CreateBasicException <TException>(IValidationResult result) where TException : BingException, new() { var exception = Types.CreateInstance <TException>(result.ErrorCode, result.ToMessage(), result.Flag); exception.ExtraData.Add("ValidationResultCollection", result); return(exception); }
/// <summary> /// 创建验证异常 /// </summary> /// <param name="result">验证结果</param> private static ValidationException CreateValidationException(IValidationResult result) { var exception = new ValidationException(result.ErrorCode, result.ToMessage(), result.ToValidationMessages(), result.Flag); exception.ExtraData.Add("ValidationResultCollection", result); return(exception); }
private static TException NewBasicException <TException>(IValidationResult result) where TException : CosmosException, new() { var type = typeof(TException); var exception = (TException)Activator.CreateInstance(type); type.GetField("Message").GetReflector().SetValue(exception, result.ToMessage()); type.GetField("Code").GetReflector().SetValue(exception, result.ErrorCode); type.GetField("Flag").GetReflector().SetValue(exception, result.Flag); exception.ExtraData.Add("ValidationResultCollection", result); return(exception); }