public Guid RegisterUserAccount(UserRegistrationDTO userRegistration, bool createAdmin = false) { using (UnitOfWorkProvider.Create()) { var userClaims = new List <Claim>(); userClaims.Add(createAdmin ? new Claim(ClaimTypes.Role, Claims.Admin) : new Claim(ClaimTypes.Role, Claims.User)); var account = coreService.CreateAccount(null, userRegistration.Password, userRegistration.Email, null as Guid?, null); Mapper.Map(userRegistration, account); foreach (var claim in userClaims) { coreService.AddClaim(account.ID, claim.Type, claim.Value); } coreService.Update(account); return(account.ID); } }