public ActionResult AddMove(NewBattleMoveViewModel newMove) { if (ModelState.IsValid) { // TODO: exceptions var battle = _repository.Battles.Single(b => b.Id == newMove.BattleId); var battleMove = new BattleMove(); battleMove.Order = battle.Verses.Count; battleMove.Text = newMove.Text; battleMove.Id = Guid.NewGuid(); battle.Verses.Add(battleMove); _repository.Save(); return(RedirectToAction("BattleDetails", "Battle", new { id = battle.Id })); } return(View(newMove)); }