コード例 #1
0
        public async void CanCreateUser()
        {
            var random = DateTime.Now.ToString("MMddyyhhmmssfff");
            var user   = new User(Guid.Empty
                                  , $"{DataGenerator.GenerateRandomName(1).FirstOrDefault()?.Item1}-{random}"
                                  , $"{DataGenerator.GenerateRandomName(1).FirstOrDefault().Item1}-{random}@testing.com"
                                  , true
                                  , _passwordStorage.HashPassword(new User(), "testdb99!!")
                                  , Guid.NewGuid().ToString()
                                  , true
                                  , true
                                  , false
                                  , false
                                  , 0
                                  , DateTime.UtcNow
                                  , DateTime.UtcNow);

            user.Profile = new UserProfile(user.Id
                                           , DataGenerator.GenerateRandomName(1).FirstOrDefault().Item1
                                           , DataGenerator.GenerateRandomName(1).FirstOrDefault().Item2
                                           , Guid.Parse("5ebf5cca-df92-49c6-ae5f-f3c9670bf9d3")
                                           , Guid.Parse("2af6ff6c-8bb8-46f0-b27e-81def1b76b64")
                                           , Guid.Parse("8a29a4ab-62a7-4a06-b2fa-46a40f449a84"));
            user.Claims.Add(new UserClaim(user.Id, "http://schemas.microsoft.com/ws/2008/06/identity/claims/role", "USER"));
            var id = await _administrationManager.Create(user);

            Assert.True(id != Guid.Empty, "Failed to create user");
        }
コード例 #2
0
        public async Task <IActionResult> CreateUser(UserDto model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var item = Mapper.Map <UserDto, User>(model);

            item.CreatedOn    = DateTime.UtcNow;
            item.PasswordHash = _passwordStorage.HashPassword(item, model.Password);
            var validation = ValidationCatalog.Validate(item);

            if (validation.IsValid)
            {
                var result = await _administrationManager.Create(item);

                return(new JsonResult(result));
            }

            // Add the errors
            foreach (var error in validation.Errors)
            {
                foreach (var allErrorMessage in error.AllErrorMessages())
                {
                    ModelState.AddModelError("Error(s): ", allErrorMessage);
                }
            }

            return(BadRequest(ModelState));
        }