Microsoft提供WCF Data Services Client Library来在C#中实现OData客户端。该库的工作原理是创建对OData服务的类型化引用。
在C#中实现OData客户端的好方法是什么,而不必先生成类型化的服务接口?换句话说,在基本URL和实体名称为字符串的情况下,在C#中实现OData客户端可以使用多种不同的OData服务的好方法是什么?
此类客户端将使用动态C#对象或字典来表示实体,而不是类型化的实体对象。
可以利用哪些现有的库或项目来实现这一目标?
这种技术的一个应用是开发一个通用的功能测试套件助手库,可用于实现OData服务的测试。
答案 0 :(得分:7)
上面指向odata-sdk的指针绝对是一个好的开始。对于其中一个也在该网站上列出的OData Explorer几乎就是您正在寻找的。这是一个普通的OData服务“浏览器”。
另一种方法(可能更好)是使用Microsoft.Data.OData.dll。它是WCF数据服务的最新CTP(http://blogs.msdn.com/b/astoriateam/archive/2011/10/13/announcing-wcf-data-services-oct-2011-ctp-for-net-4-and-silverlight-4.aspx)的一部分。 它是OData的低级读者和作者。它不能解决URL处理问题,但读取和写入有效负载效果很好。 这里有一个用法示例:http://blogs.msdn.com/b/astoriateam/archive/2011/10/14/introducing-the-odata-library.aspx
答案 1 :(得分:1)
为此,您只需要一个URL / String Parser,对于更深入的方法,您可能还想在这里查看一些选项: