public ICollection <string> ValidateRepository(RepositoryFormModel model) { var errors = new List <string>(); if (model.Name.Length < RepositoryMinName || model.Name.Length > RepositoryMaxName) { errors.Add($"Repository '{model.Name}' is not valid. It must be between {RepositoryMinName} and {RepositoryMaxName} characters long."); } if (model.RepositoryType != RepositoryPublicType && model.RepositoryType != RepositoryPrivateType) { errors.Add($"Repository type can be either '{RepositoryPublicType}' or '{RepositoryPrivateType}'."); } return(errors); }
public HttpResponse Create(RepositoryFormModel model) { var modelErrors = this.validator.ValidateRepository(model); if (modelErrors.Any()) { return(Error(modelErrors)); } var repository = new Repository { Name = model.Name, IsPublic = model.RepositoryType == RepositoryPublicType, OwnerId = this.User.Id }; this.data.Repositories.Add(repository); this.data.SaveChanges(); return(Redirect("/Repositories/All")); }