В качестве альтернативы данным протокола ручного кодирования вы можете попробовать JayData , который предоставляет вам высокоуровневый семантический API поверх OData с поддержкой JavaScript Language Query и нативными операциями crud.
С JayData вам не нужно вручную собирать выражения oData $filter, $sort, $select
и т. Д., Плюс вы можете использовать собственный синтаксис JavaScript.
Приведенный выше запрос может быть реализован намного проще с помощью JayData:
$data.YourContext.filter(function(a) {return a.ct_portfolicode==this.portfolioCode;}, {portfolioCode: YourValue})
.map(function(p) {return p.ct_portfolioid;})
.toArray(...);
Вы можете загрузить последнюю версию JayData с CodePlex