2016-09-09 3 views
6

私はSOAPエンドポイントを持っている:odataを介して石鹸のエンドポイントを照会することは可能ですか?

<organization URL>/XRMServices/2011/Organization.svc 

私は、このサービスの周りODATAラッパーを作成したいと思い、http://myodataservice/api/Entities$?filter=AccountNumber eq '123123'

に移動するときには、SOAP(WSDL)サービスからデータを取得ますようにクライアントがodataクエリーを発行できるようにします。

ODATAを使用してSOAPサービスを照会することはできますか?

答えて

4

SOAPエンドポイントの周りにODataラッパーを作成することはできますが、それはその価値があるとは思いません。

ODataサービスでは、(特に)すべてのプロパティによるフィルタリング、順序付け、および選択が可能になり、SOAPサービスではこのすべてが許可されない可能性があります。したがって、ODataサービスはすべてのデータを取得し、 ODataの主な利点を失った後処理を行います。サーバー側ですべてのフィルタリングと並べ替えを実行できます。あなただけでデータクライアント側を取得し、そこにフィルタすることもできます。

あなたのSOAPサービスが何らかの形でこのサポートをすべて備えている場合は、ODataラッパーを作成してこれらの利点を得ることができますが、可能なすべてのクエリーをSOAPサービスが処理できます。

ODataラッパーが必要な理由はわかりませんが、これは最小限の効果が得られるように思われるかもしれませんが、すべてがユースケースに依存しています。

+0

非常に感謝しています。なぜなら、CRM 2011は石鹸とオデアの両方を公開しているからです。我々はCSDL(odata)モデルに対して照会しようとしてきており、その能力は極限的に制限されていますが、odataエンドポイントを使用するとすべて正常ですが、提供されたCSDLファイルをモデルとして使用すると、このモデルに対して、シリアライゼーションには多くの問題があり、それは悪いlinqクエリの構築のように見えます –

+1

SOAPサービスをラップするとその問題が解決するとは思いません – TomDoesCode

関連する問題