2012-09-24 1 views
7

私はComponentComponentPresentationKeywordsの財産であるODataの子のある属性に従ってオブジェクトを順序付けるにはどうすればよいですか?

localhost:82/odata.svc/ComponentPresentations?$filter=TemplateId eq 2894 and publicationId eq 10&$expand=Component/Keywords?$orderby=Title desc 

Componentの財産であるこのURLを使ってODataの中でいくつかのカスタムソートをやろうとしている、と私はキーワードのTitle属性に従ってComponentPresentationをソートします。しかし、キーワードやタイトルはコンポーネントプレゼンテーションのプロパティです

Kewordのタイトルの属性に従って結果を並べ替える方法はありますか? ComponentPresentationの子コンポーネントのコンポーネントの子はどれですか?

+0

と同じくらい簡単ですが、私はどちらか動作するとは思いません。私はそれを試して、Order_DetailsのselectステートメントにQuantityを追加しました:http://services.odata.org/V4/Northwind/Northwind.svc/Orders?$select=OrderID&$expand=Order_Details($select=UnitPrice,Quantity ; $ orderby = Quantity)Order_DetailsがQuantityでソートされているようには見えません。 –

答えて

6

例えば、ネストされた単一カーディナリティーのプロパティで結果をソートすることが可能である:それは次のようになりますけれどもhttp://services.odata.org/V3/Northwind/Northwind.svc/Orders?$top=50&$expand=Customer&$orderby=Customer/City

は私の知る限り、それは(多くのカーディナリティを持つナビゲーションプロパティでこれを行うことは可能ではありません展開されたフィードに戻ってくるものを注文する展開シナリオで便利です)。

5

OData V4以降であることを言いたいことがあります。あなたはあなたが望むように多くの展開/選択/順序付け/フィルターを入れ子にすることができます。今では(申し訳ありませんが、私はコメントすることを担当者のポイントを持っていない)...上記@VladL http://services.odata.org/V4/Northwind/Northwind.svc/Orders?$select=OrderID&$expand=Order_Details($select=UnitPrice;$orderby=Quantity)

+0

構文は正しいですが、ネストされたorderbyは結果に何も変更していないようです。 – sroll

+0

@sroll私はodata.orgのサンプルODataサービスで多くの時間を費やしてきましたが、サービスがまったくダウンしていないと、違う結果が得られることに気づきました;)TripPin http:// www。 odata.org/odata-services/ – VladL

+0

構文が正しければ、それはうまくいかない:s – NicoJuicy

関連する問題