private void _GroupBy(Expression expression) { var propertyName = ReflectionExtensionHelper.GetProperty(expression as LambdaExpression).Name; propertyName = _mappingIndex.Columns.FirstOrDefault(x => x.PropertyName == propertyName)?.SearchName ?? propertyName; _request.Aggregations = new TermsAggregation(propertyName) { Field = propertyName, Size = 1000 }; }
private void _OrderBy(Expression expression, OrderByType type = OrderByType.Asc) { var propertyName = ReflectionExtensionHelper.GetProperty(expression as LambdaExpression).Name; propertyName = _mappingIndex.Columns.FirstOrDefault(x => x.PropertyName == propertyName)?.SearchName ?? propertyName; _request.Sort = new ISort[] { new FieldSort { Field = propertyName, Order = type == OrderByType.Asc ? SortOrder.Ascending : SortOrder.Descending } }; }