protected static QueryFilterClause FromLinQExpressionBody(Expression body) { if (body == null) { return(null); } return (QueryFilterBooleanOperator.fromBooleanExpression(body) as QueryFilterClause ?? QueryFilterCondition.fromConditionExpression(body)); }
public string GetGroupDetailUrl(Type type, object model, string baseUrl = null) { if (model == null || Grouping == null || Grouping.Keys == null || Grouping.Keys.Count == 0) { return(null); } var newQuery = Clone(); newQuery.Grouping = null; newQuery.Take = null; newQuery.Page = 1; newQuery.Skip = 0; foreach (var key in Grouping.Keys) { var cond = QueryFilterCondition.FromModelAndName(type, key, model); if (cond == null) { continue; } newQuery.AddFilterCondition(cond); } return(newQuery.AddToUrl(baseUrl ?? newQuery.AttachedTo?.BaseUrl)); }