void SaveRole(ApplicationRole applicationRole)
        {
            XpoApplicationRole role = XpoSession.GetObjectByKey <XpoApplicationRole>(applicationRole.ID);

            if (role == null)
            {
                role = new XpoApplicationRole(XpoSession);
            }
            role.Name = applicationRole.Name;
            XpoSession.CommitChanges();
        }
        public ActionResult GridViewPartialAddNewOrUpdate([ModelBinder(typeof(DevExpressEditorsBinder))] RoleViewModel role)
        {
            var appRole = XpoSession.Query <XpoApplicationRole>().FirstOrDefault(x => x.NameUpper == role.Name.ToUpper());

            if (appRole == null)
            {
                appRole = new XpoApplicationRole(XpoSession);
            }
            appRole.Name = role.Name;
            XpoSession.CommitChanges();

            return(PartialView("_GridViewPartial", GetRoles()));
        }
        private IdentityResult UpdateRole(string userId, string roleName)
        {
            var user = UserManager.FindById(userId);
            //RemovePreviousRoles(user);
            //if role does not exist then add the role
            XpoApplicationRole role = XpoSession.Query <XpoApplicationRole>()?.FirstOrDefault(x => x.Name == roleName);

            if (role == null)
            {
                role      = new XpoApplicationRole(XpoSession);
                role.Name = roleName;
                XpoSession.CommitChanges();
            }

            return(UserManager.AddToRole(user.Id, roleName));
        }