コード例 #1
0
        public async Task <IActionResult> Register(RegData data)
        {
            var err = new RegData();

            if (await data.CheckRegData(err, _context))
            {
                var user = new User()
                {
                    Username = data.Username,
                    Email    = data.Email,
                    Password = data.Password
                };

                user.CreatePassword();
                user.RegDate = DateTime.Now;
                await _context.AddUser(user);

                await user.Authenticate(HttpContext);

                return(CreatedAtAction(nameof(GetPublicUser), new { user.Username }, new PublicUser()
                {
                    Username = user.Username,
                    RegDate = user.RegDate
                }));
            }

            return(BadRequest(err));
        }