2013-07-09 25 views
0

我已經編寫了我的支持Odata V3的odata服務消費者代碼。我寫這裏提到的邏輯Consume Odata Service and get result in JSON使用DataServiceContext查詢Odata服務獲取支持版本2的json結果

我正在使用的java odata服務是用Odata V2編寫的。現在我想得到結果作爲Json什麼是方法。請幫忙。

我嘗試了以下的應用程序,但是我沒有得到結果: 1. UseJson數據上下文方法,但它僅支持odata服務版本3或更高版本。 2.傳遞標頭爲json,但它給我錯誤。

回答

1

不幸的是,如果你的服務器不支持v3的OData,你就不能使用帶有JSON的WCF數據服務客戶端。

您仍然可以在Atom上使用WCF Data Services客戶端。這是可以接受的你的情況?

或者,如果您必須使用舊的JSON格式,則可以使用ODataLib(在NuGet上以Microsoft.Data.OData提供)讀取和寫入詳細的JSON有效內容。 ODataLib是OData有效載荷的低級序列化和反序列化庫;你不會得到WCF數據服務客戶端庫的好處,你必須自己實現實現,實體跟蹤等,但這比使用JSON.NET(或類似的庫)直接。

我的博客http://odata.jenspinney.com/有一些使用ODataLib的例子。如果您決定走這條路線,請隨時提出有關如何獲得特定場景的問題。

+1

感謝您的回覆。你有很好的博客 – user2463514

+0

我最初只使用ODataLib開始使用它,但是爲了使用它,我們必須編寫大量的代碼,就像你剛纔提到的那樣。 – user2463514

+0

您是否可以確認我是否將來的Microsoft有任何計劃從odata中刪除json詳細信息?或者json light和verbose都會在那裏? – user2463514