public ActionResult GetRoles()
 {
     using (new PerformanceMonitor())
     {
         try
         {
             var roles = new AzureRoleProvider();
             return(this.Json(roles.GetAllRoles(), JsonRequestBehavior.AllowGet));
         }
         catch (Exception ex)
         {
             logger.Log(ex, EventTypes.Error, (int)Fault.Unknown);
             return(this.Json(WebResponse.Bind((int)Fault.Unknown, ex.Message), JsonRequestBehavior.AllowGet));
         }
     }
 }
        public ActionResult DeleteUserRole(UserRole userRole)
        {
            using (new PerformanceMonitor())
            {
                if (null == userRole)
                {
                    return(this.Json(WebResponse.Bind((int)Fault.DataNotSpecified, "User Role not specified."), JsonRequestBehavior.AllowGet));
                }
                else
                {
                    try
                    {
                        var userCore = new UserCore();
                        var userId   = new User()
                        {
                            Identifier = userRole.UserIdentifier,
                        };
                        var userApp = new UserApplication()
                        {
                            User        = userId,
                            Application = Application.Current,
                        };
                        var user = userCore.Get(userApp);

                        var roles = new AzureRoleProvider();
                        roles.RemoveUserFromRole(user.UserName, userRole.RoleName);

                        return(this.Json(new WebResponse(), JsonRequestBehavior.AllowGet));
                    }
                    catch (Exception ex)
                    {
                        logger.Log(ex, EventTypes.Error, (int)Fault.Unknown);
                        return(this.Json(WebResponse.Bind((int)Fault.Unknown, ex.Message), JsonRequestBehavior.AllowGet));
                    }
                }
            }
        }