我已经编写了支持Odata V3的odata服务消费者代码。我写过这里提到的逻辑Consume Odata Service and get result in JSON
我正在消费的java odata服务是用Odata V2编写的。现在我想得到Json的结果是什么方法。请帮忙。
我尝试过以下apporaches但是我没有得到结果: 1.使用数据上下文的Json方法,但它仅支持odata服务版本3或更高版本。 2.将标题作为json传递,但它给了我错误。
答案 0 :(得分:1)
不幸的是,如果您的服务器不支持OD3的v3,则不能将WCF数据服务客户端与JSON一起使用。
您仍然可以将WCF数据服务客户端与Atom一起使用。这对你的场景是否可以接受?
或者,如果必须使用旧的JSON格式,则可以使用ODataLib(在NuGet上可用作Microsoft.Data.OData)来读取和写入详细的JSON有效内容。 ODataLib是OData有效负载的低级序列化和反序列化库;你不会得到WCF数据服务客户端库的好处,你必须自己实现实现,实体跟踪等,但它比使用JSON.NET(或类似的库)要好得多)直接。
我的博客http://odata.jenspinney.com/提供了一些使用ODataLib的示例。如果您决定采用这条路线,请随时提出有关如何使特定方案有效的问题。