public Superhero CreateSuperhero(string superheroName, string secretIdentity, string cityName, IEnumerable<string> powerNames) { if (string.IsNullOrEmpty(superheroName) || superheroName.Length < MinSuperheroNameLength || superheroName.Length > MaxSuperherNameLength) { throw new ArgumentException("Invalid supehero name"); } var superhero = new Superhero { SuperheroName = superheroName, SecretIdentity = secretIdentity, City = this.LoadOrCreateCity(cityName), Powers = powerNames?.Select(this.LoadOrCreatePower) .ToList() }; using (this.unitOfWork) { this.superheroes.Add(superhero); this.unitOfWork.Commit(); } return superhero; }
public void Delete(Superhero Superhero) { try { db.Superheroes.Remove(Superhero); } catch { } }
public void AddPowerToSuperhero(Superhero superhero, string powerName) { var dbSuperhero = this.superheroes.GetById(superhero.Id); if (dbSuperhero == null) { throw new ArgumentNullException(nameof(superhero), "Invalid superhero"); } using (unitOfWork) { dbSuperhero.Powers.Add(this.LoadOrCreatePower(powerName)); unitOfWork.Commit(); } }
public void Add(Superhero Superhero) { db.Superheroes.Add(Superhero); }