/// <summary> /// Validate /// </summary> public void Validate() { var tempList = ValidateStrategyList.Select(strategy => strategy.Validate(Instance)).ToList(); ResultCollection = new ValidationResultCollection(tempList); Handle?.Invoke(ResultCollection.Handle()); }
/// <summary> /// 验证 /// </summary> /// <param name="appendAction">追加操作</param> public void Validate(Action <ValidationResultCollection> appendAction = null) { var result = DataAnnotationValidation.Validate(Instance); ResultCollection = new ValidationResultCollection(result); appendAction?.Invoke(ResultCollection); var tempList = ValidateStrategyList.Select(strategy => strategy.Validate(Instance)).ToList(); if (tempList.Any()) { ResultCollection.AddRange(tempList); } if (ResultCollection.IsValid) { return; } if (Handle == null) { Handle = op => op.HandleAll(BingConfig.Current.ValidationHandler);// 如果没有处理器操作,则使用默认操作 } Handle.Invoke(ResultCollection.Handle()); }