2016-08-18 6 views
0

Например, У меня есть объектная модель:OData v4.0 агрегатные запросы (совокупный синтаксис запросов)

Product 
{ 
    int ProductId, 
    string Name, 
    List<Sale> Sales 
} 
  • Я хочу использовать агрегатные запросы, чтобы получить общий объем продаж:

GET: Продукт $ = применять GroupBy (Имя, агрегатные (Sales (Сумма с суммы в качестве Total)))(следовать в оазисе-открытый стандарт)

-> Получил ошибку: UriQueryExpressionParser_CloseParenOrCommaExpected = "')' или ',' ожидается в позиции {0} в '{1}'. .»позиция в размере

  • изменить запрос:.

ГЭТ: Продукт $ применять = GroupBy (имя, совокупный (Sales/Amount с суммой в Total))

-> Работа успешно !.

Мой вопрос:

-> Если текущая версия OData Core поддерживала синтаксис совокупного запроса в качестве примера «aggregate (Sales (Amount with sum as Total))« или нет?

Прошу вас, пожалуйста, ваш совет.

Большое спасибо

ответ

0

Это отслеживается на https://github.com/OData/odata.net/issues/463

запросе

Product?$apply=groupby(Name, aggregate(Sales/Amount with sum as Total)) 

должен бросить исключение, а также, это пока не поддерживается.

+0

Спасибо за информацию. –

-1

Решение состоит в использовании функции QueryByCube, предоставляемой AdaptiveLINQ component. Отказ от ответственности: Я разработчик AdaptiveLINQ

+0

Я ниспровергаю этот бесстыдный плагин ... возможно, дайте пример кода, как бы вы решили, что вопрос будет опубликован с использованием библиотеки? –