public List <OAuthClient> GetAll(OAuthClientFilter filter = null) { using (var context = new DeviceHiveContext()) { return(context.OAuthClients.Filter(filter).ToList()); } }
public List <OAuthClient> GetAll(OAuthClientFilter filter = null) { return(_mongo.OAuthClients.AsQueryable().Filter(filter).ToList()); }
public static IQueryable <OAuthClient> Filter(this IQueryable <OAuthClient> query, OAuthClientFilter filter) { if (filter == null) { return(query); } if (filter.Name != null) { query = query.Where(e => e.Name == filter.Name); } if (filter.NamePattern != null) { query = query.Where(e => e.Name.Contains(filter.NamePattern)); } if (filter.Domain != null) { query = query.Where(e => e.Domain == filter.Domain); } if (filter.OAuthID != null) { query = query.Where(e => e.OAuthID == filter.OAuthID); } if (filter.SortField != OAuthClientSortField.None) { switch (filter.SortField) { case OAuthClientSortField.ID: query = query.OrderBy(e => e.ID, filter.SortOrder); break; case OAuthClientSortField.Name: query = query.OrderBy(e => e.Name, filter.SortOrder); break; case OAuthClientSortField.Domain: query = query.OrderBy(e => e.Domain, filter.SortOrder); break; case OAuthClientSortField.OAuthID: query = query.OrderBy(e => e.OAuthID, filter.SortOrder); break; } } if (filter.Skip != null) { query = query.Skip(filter.Skip.Value); } if (filter.Take != null) { query = query.Take(filter.Take.Value); } return(query); }