namespace XFEExtension.NetCore.AutoConfig; /// /// 配置验证结果。 /// public readonly record struct ProfileValidationResult(bool IsValid, string? ErrorMessage) { /// 验证成功。 public static ProfileValidationResult Success { get; } = new(true, null); /// 创建验证失败结果。 public static ProfileValidationResult Failure(string errorMessage) { ArgumentException.ThrowIfNullOrWhiteSpace(errorMessage); return new ProfileValidationResult(false, errorMessage); } } /// /// 加载或导入的配置未通过验证。 /// public sealed class ProfileValidationException : Exception { /// 创建配置验证异常。 public ProfileValidationException(Type profileType, string errorMessage) : base($"配置类型 {profileType.FullName} 验证失败:{errorMessage}") { ProfileType = profileType; ValidationError = errorMessage; } /// 验证失败的配置类型。 public Type ProfileType { get; } /// 验证错误。 public string ValidationError { get; } }