示例#1
0
        public ActionResult Create(Game game)
        {
            DateTime now = DateTime.Now;

            try
            {
                Profile playerTwo = _db.Profiles.FirstOrDefault(profile => profile.ProfileId == game.P2Id);
                Profile playerOne = _db.Profiles.FirstOrDefault(profile => profile.ProfileId == game.P1Id);
                game.LastPlayed = now;

                if (playerTwo != null && game.P1Id != game.P2Id)
                {
                    game.P1Name = playerOne.Name;
                    game.P2Name = playerTwo.Name;
                    _db.Games.Add(game);
                    _db.SaveChanges();
                    return(RedirectToAction("Details", new { id = game.GameId }));
                }
                else
                {
                    throw new System.InvalidOperationException("User unavailable");
                }
            }
            catch (Exception ex)
            {
                return(View("Error", ex.Message));
            }
        }
        public async Task <ActionResult> Create(Profile profile)
        {
            var userId      = this.User.FindFirst(ClaimTypes.NameIdentifier)?.Value;
            var currentUser = await _userManager.FindByIdAsync(userId);

            profile.User = currentUser;
            if (String.IsNullOrWhiteSpace(profile.Img))
            {
                profile.Img = "/img/rubber-ducky.png";
            }
            _db.Profiles.Add(profile);
            _db.SaveChanges();
            return(RedirectToAction("Index"));
        }