2011-08-29 84 views
4

我想知道,簡而言之,從查詢的角度使用OData的侷限性總結。例如:OData的查詢限制是什麼?

  • 我可以做遞歸查詢嗎?
  • 它包含哪些LINQ功能子集?

我發現規格非常長,無法分析。

回答

5

那麼,當您詢問OData的查詢限制時,我認爲您的意思是WCF數據服務的限制。 OData是協議; OData協議的語法和操作關鍵字的支持或不支持的實現取決於OData提供程序(在您的情況下是WCF數據服務,我相信自從您將問題標記爲WCF)。

鑑於此,LINQ功能的子集在this MSDN文章中詳細列出。限制的數量非常大,所以最好鏈接到它,而不是將其列出。

對於第一個關於遞歸查詢的問題,我不得不承認我不確定一個典型的LINQ遞歸函數是怎麼樣的,除非你定義了你自己的擴展方法。如果您正在做這樣的事情,最好的辦法可能是將該遞歸調用包裝在WCF數據服務自定義服務方法中,並像使用其他服務方法一樣通過URL調用它。

我希望這有助於!

+0

謝謝!從MSDN鏈接我假定不支持遞歸。我的意思最初是對OData Web服務與LINQ功能的表達限制。換句話說:用OData查詢可以表達什麼子集的LINQ表達式? –

+0

很高興能幫到你! –