using FluentValidation;
using FluentValidation.Results;
namespace Kean.Domain
{
///
/// 验证
///
public abstract class CommandValidator : AbstractValidator, ICommand where T : class, ICommand
{
///
/// 获取验证结果
///
public virtual ValidationResult ValidationResult { get; protected set; }
///
/// 验证项
///
internal protected abstract void Validation();
///
/// 命令验证
///
internal void Validate() =>
ValidationResult = Validate(this as T);
}
}