コード例 #1
0
        public IActionResult DoesRegister(UserObject user)
        {
            System.Console.WriteLine("****************Does Register");
            // Check initial ModelState
            if (ModelState.IsValid)
            {
                // If a User exists with provided email
                if (dbContext.Users.Any(u => u.Email == user.Email))
                {
                    System.Console.WriteLine("****************Email in use");
                    // Manually add a ModelState error to the Email field, with provided error message
                    ModelState.AddModelError("Email", "Email already in use!");
                    // You may consider returning to the View at this point
                    return(View("Index", user));
                }
                else
                {
                    System.Console.WriteLine("****************Creating User");
                    // Initializing a PasswordHasher object, providing our User class as its
                    PasswordHasher <UserObject> Hasher = new PasswordHasher <UserObject>();
                    user.Password = Hasher.HashPassword(user, user.Password);

                    //Save your user object to the database
                    dbContext.Add(user);
                    dbContext.SaveChanges();
                    HttpContext.Session.SetInt32("userid", user.UserId);

                    //create monster
                    MonsterObject myMonster = new MonsterObject();
                    myMonster.UserId = user.UserId;
                    dbContext.Add(myMonster);
                    dbContext.SaveChanges();

                    return(Redirect("/monster")); //This doesn't exist yet
                }
            }
            // other code
            else
            {
                System.Console.WriteLine("****************User Not Created");
                return(View("Index", user));
            }
        }
コード例 #2
0
        public async Task <Player> CreatePlayer(string discordId)
        {
            var player = new Player
            {
                DiscordId = discordId,
                Level     = 1
            };

            _monsterContext.Add(player);
            await _monsterContext.SaveChangesAsync();

            return(player);
        }