コード例 #1
0
        public async Task <IPaged <RolePermissionShip> > PagedAsync(RolePermissionShipQueryParameter param, int pageIndex, int pageSize)
        {
            Expression <Func <RolePermissionShip, bool> > query = null;

            if (param != null && param.RoleId != null && param.PermissionId != null)
            {
                query = e => e.RoleId == param.RoleId.Value && e.PermissionId == param.PermissionId.Value;
            }
            else if (param != null && param.RoleId != null)
            {
                query = e => e.RoleId == param.RoleId.Value;
            }
            else if (param != null && param.PermissionId != null)
            {
                query = e => e.PermissionId == param.PermissionId.Value;
            }
            else
            {
                query = e => true;
            }

            var result = await base.PagedAsync(query, pageIndex, pageSize);

            return(result);
        }
コード例 #2
0
        public async Task <List <RolePermissionShip> > RetrieveAsync(RolePermissionShipQueryParameter param)
        {
            if (param == null)
            {
                throw new ArgumentNullException(nameof(param));
            }
            if (param.RoleId == null || param.PermissionId == null)
            {
                throw new ArgumentNullException(($"{nameof(param.PermissionId)} & {nameof(param.RoleId)}"));
            }

            Expression <Func <RolePermissionShip, bool> > query = null;

            if (param != null && param.RoleId != null && param.PermissionId != null)
            {
                query = e => e.RoleId == param.RoleId.Value && e.PermissionId == param.PermissionId.Value;
            }
            else if (param != null && param.RoleId != null)
            {
                query = e => e.RoleId == param.RoleId.Value;
            }
            else if (param != null && param.PermissionId != null)
            {
                query = e => e.PermissionId == param.PermissionId.Value;
            }
            else
            {
                query = e => true;
            }

            var list = (await base.SelectAsync(query)).ToList();

            return(list);
        }