public ValidationResult Validate() { if (GitRepository == null) { return(ValidationResult.Invalid($"{nameof(GitRepository)} is null")); } if (FtpServer == null) { return(ValidationResult.Invalid($"{nameof(GitRepository)} is null")); } var gitValidation = GitRepository.Validate(); if (!gitValidation.IsValid) { return(gitValidation); } var ftpValidation = FtpServer.Validate(); if (!ftpValidation.IsValid) { return(ftpValidation); } return(ValidationResult.Valid); }