public override ErrorList Validate() { var result = new ErrorList(); result.AddRange(base.Validate()); if (Purpose != null) { result.AddRange(Purpose.Validate()); } if (Name != null) { result.AddRange(Name.Validate()); } if (Telecom != null) { Telecom.ForEach(elem => result.AddRange(elem.Validate())); } if (Address != null) { result.AddRange(Address.Validate()); } if (Gender != null) { result.AddRange(Gender.Validate()); } return(result); }
/// <summary> /// Validate the object. /// </summary> /// <exception cref="ValidationException"> /// Thrown if validation fails /// </exception> public virtual void Validate() { if (Creator == null) { throw new ValidationException(ValidationRules.CannotBeNull, "Creator"); } if (Id == null) { throw new ValidationException(ValidationRules.CannotBeNull, "Id"); } if (Members == null) { throw new ValidationException(ValidationRules.CannotBeNull, "Members"); } if (Name == null) { throw new ValidationException(ValidationRules.CannotBeNull, "Name"); } if (NameNormalized == null) { throw new ValidationException(ValidationRules.CannotBeNull, "NameNormalized"); } if (Purpose == null) { throw new ValidationException(ValidationRules.CannotBeNull, "Purpose"); } if (Topic == null) { throw new ValidationException(ValidationRules.CannotBeNull, "Topic"); } if (Members != null) { if (Members.Count < 1) { throw new ValidationException(ValidationRules.MinItems, "Members", 1); } if (Members.Count != System.Linq.Enumerable.Count(System.Linq.Enumerable.Distinct(Members))) { throw new ValidationException(ValidationRules.UniqueItems, "Members"); } } if (Purpose != null) { Purpose.Validate(); } if (Topic != null) { Topic.Validate(); } }