public async Task <IActionResult> Create(AddStreamerViewModel model) { if (ModelState.IsValid) { var playerClass = await _appDbContext.PlayerClasses.SingleOrDefaultAsync(c => c.Name == model.NewStreamer.PlayerClass); var spec = await _appDbContext.Specs.SingleOrDefaultAsync(s => s.Name == model.NewStreamer.Spec); var newStreamer = new TwitchStreamer() { Channel = model.NewStreamer.Channel, GuildRank = model.NewStreamer.GuildRank, CharacterName = model.NewStreamer.CharacterName, PlayerClass = playerClass, Spec = spec }; _appDbContext.TwitchStreamers.Add(newStreamer); await _appDbContext.SaveChangesAsync(); } else { // Throw exception } return(RedirectToAction("Index", "Streams")); }
public IActionResult Create() { var playerClasses = new List <SelectListItem>(); playerClasses.AddRange(_appDbContext.PlayerClasses .Select(p => new SelectListItem() { Value = p.Name, Text = p.Name } ) ); var model = new AddStreamerViewModel() { NewStreamer = new NewStreamer(), PlayerClasses = playerClasses }; return(View(model)); }