示例#1
0
        public IHttpActionResult DeletePermissionForUser(long?userid, long?permissionid)
        {
            Search <UserPermission> userPermissionSearch = new Search <UserPermission>(new SearchConditionGroup(SearchConditionGroup.SearchConditionGroupTypes.And,
                                                                                                                new LongSearchCondition <UserPermission>()
            {
                Field = "UserID",
                SearchConditionType = SearchCondition.SearchConditionTypes.Equals,
                Value = userid
            },
                                                                                                                new LongSearchCondition <UserPermission>()
            {
                Field = "PermissionID",
                SearchConditionType = SearchCondition.SearchConditionTypes.Equals,
                Value = permissionid
            }));

            UserPermission dbUserPermission = userPermissionSearch.GetEditable();

            if (!dbUserPermission.Delete())
            {
                StringBuilder errorBuilder = new StringBuilder("The following errors occurred during delete:");
                foreach (Error error in dbUserPermission.Errors)
                {
                    errorBuilder.AppendLine(error.Message);
                }

                return(BadRequest(errorBuilder.ToString()));
            }

            NotifyOAuthServerOfPermissionChanges(userid.Value, "permissions");

            return(Ok());
        }