public static DataServiceQuery <T> Expand <T>(this DataServiceQuery <T> query, params Expression <Func <T, object> >[] expanders) { foreach (var expander in expanders) { query = query.Expand(expander.GetSelectedMemberName()); } return(query); }
public virtual TEntity Load(Expression <Func <TEntity, bool> > predicate, params Expression <Func <TEntity, object> >[] expanders) { DataServiceQuery <TEntity> query = Context.CreateQuery <TEntity>(EntitySetName); query = query.Expand(expanders); IQueryable <TEntity> queryable = query.Where(predicate); TEntity existing = query.SingleOrDefault(); if (existing != null) { Entity = existing; } return(Entity); }
protected override IQueryable <UserEvent> Selector(DataServiceQuery <UserEvent> userEvents, Searcher searcher) => userEvents .Expand(userEvent => userEvent.User) .Expand(userEvent => userEvent.Event) .Where(userEvent => userEvent.User.Id == Guid.Parse(Id));
protected virtual DataServiceQuery <TEntity> ExpandQuery(DataServiceQuery <TEntity> query, string expandProperty) { return(query.Expand(expandProperty)); }
protected override IQueryable <User> Selector(DataServiceQuery <User> users, Searcher searcher) => users .Expand(user => user.UsersEvents) .Expand(user => user.Fit) .Expand(user => user.Profile) .Where(user => user.Profile.FamilyName.ToUpper().Contains(searcher.Filter.ToUpper())) .OrderBy(user => user.Profile.FamilyName);
protected override DataServiceQuery <Event> Selector(DataServiceQuery <Event> @event) => @event.Expand("UsersEvents($expand=User)");
protected override DataServiceQuery <User> Selector(DataServiceQuery <User> user) => user .Expand(u => u.Profile) .Expand(u => u.Fit);
protected override IQueryable <Event> Selector(DataServiceQuery <Event> events, Searcher searcher) => events .Expand(userEvent => userEvent.Court) .Expand("UsersEvents($expand=User)") .Expand("UsersEvents($expand=Event)") .Where(@event => @event.UsersEvents.Any(userEvent => userEvent.User.Profile.FamilyName.ToUpper().Contains(searcher.Filter.ToUpper()))) .OrderByDescending(userEvent => userEvent.StartDate);