public async void PerformInitialSetup(PicshareIdentityDbContext context) { // initial configuration will go here PicshareUserManager userMgr = new PicshareUserManager(new UserStore <PicshareUser>(context)); PicshareRoleManager roleMgr = new PicshareRoleManager(new RoleStore <PicshareRole>(context)); string roleName = "Administrators"; string userName = "******"; string password = "******"; if (!await roleMgr.RoleExistsAsync(roleName)) { await roleMgr.CreateAsync(new PicshareRole(roleName)); } PicshareUser user = await userMgr.FindByNameAsync(userName); if (user == null) { await userMgr.CreateAsync(new PicshareUser { UserName = userName }, password); user = await userMgr.FindByNameAsync(userName); } if (!await userMgr.IsInRoleAsync(user.Id, roleName)) { await userMgr.AddToRoleAsync(user.Id, roleName); } }
public async Task <IHttpActionResult> Register(LoginModel userDetails) { try { if (ModelState.IsValid) { var user = new PicshareUser { Id = Guid.NewGuid().ToString(), UserName = userDetails.Name, PasswordHash = userDetails.Password }; var result = await UserManager.CreateAsync(user, userDetails.Password); if (result == IdentityResult.Success) { return(Json(new ResponseModel { HasError = false, JsonContent = user.UserName })); } else { var message = result.Errors.Aggregate((prev, curr) => prev + "/n" + curr); ModelState.AddModelError("", message); return(Json(new ResponseModel { HasError = true, ErrorMessage = message })); } } return(StatusCode(System.Net.HttpStatusCode.Forbidden)); } catch (Exception ex) { return(Json <ResponseModel>(new ResponseModel { HasError = true, ErrorMessage = ex.Message })); } }