protected void ASPxGridViewUsers_RowInserting(object sender, DevExpress.Web.Data.ASPxDataInsertingEventArgs e) { if (IsValid) { var manager = Context.GetOwinContext().GetUserManager <ApplicationUserManager>(); var user = new ApplicationUser() { Name = e.NewValues["Name"].ToString(), UserName = e.NewValues["UserName"].ToString(), Email = e.NewValues["UserName"].ToString(), TypeUser = e.NewValues["TypeUser"].ToString() }; IdentityResult result = manager.Create(user, e.NewValues["PasswordHash"].ToString()); if (result.Succeeded) { // Para obtener más información sobre cómo habilitar la confirmación de cuentas y el restablecimiento de contraseña, visite http://go.microsoft.com/fwlink/?LinkID=320771 //string code = manager.GenerateEmailConfirmationToken(user.Id); //string callbackUrl = IdentityHelper.GetUserConfirmationRedirectUrl(code, user.Id, Request); //manager.SendEmail(user.Id, "Confirmar cuenta", "Para confirmar la cuenta, haga clic <a href=\"" + callbackUrl + "\">aquí</a>."); //se obtiene el valor del rol seleccionado //ASPxComboBox editor = (ASPxComboBox)ASPxGridViewUsers.FindEditFormTemplateControl("cmbUserType"); //string grupo = editor.Text; string[] x = GetLookupCompanies(); //se valida si existe el rol de usuario var _context = new ApplicationDbContext(); var roleStore = new RoleStore <IdentityRole>(_context); var roleManager = new RoleManager <IdentityRole>(roleStore); if (!roleManager.RoleExists(e.NewValues["TypeUser"].ToString())) { _context.Roles.Add(new IdentityRole(e.NewValues["TypeUser"].ToString())); } //se agrega el usuario al Rol seleccionado manager.AddToRole(user.Id, e.NewValues["TypeUser"].ToString()); ASPxGridViewUsers.JSProperties.Add("cp_success", "true"); } else { ASPxGridViewUsers.JSProperties.Add("cp_success", "false"); } } e.Cancel = true; ASPxGridViewUsers.CancelEdit(); GetUserList(); }
protected void ASPxGridViewUsers_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e) { e.Cancel = false; ASPxGridViewUsers.CancelEdit(); ASPxGridViewUsers.DataBind(); }