c# - 如何在 C# 中实现动态 OData 客户端?

标签 c# dynamic client odata

<分区>

Microsoft 提供了一个 WCF Data Services Client Library在 C# 中实现 OData 客户端。该库的工作原理是创建对 OData 服务的类型化引用。

在无需事先生成类型化服务接口(interface)的情况下,用 C# 实现 OData 客户端的好方法是什么?换句话说,在给定基本 URL 和实体名称为字符串的情况下,用 C# 实现可以与多种不同 OData 服务一起使用的 OData 客户端的好方法是什么?

此类客户端将使用动态 C# 对象或字典来表示实体,而不是类型化的实体对象。

可以利用哪些现有的库或项目来实现这一点?

此技术的一个应用是开发一个通用的功能测试套件帮助程序库,可用于实现 OData 服务的测试。

最佳答案

上面指向odata-sdk的指针绝对是一个好的开始。对于一个也列在该站点上的 OData Explorer 来说,它几乎正是您要找的东西。这是一个通用的 OData 服务“浏览器”。

另一种方法(可能更好)是使用 Microsoft.Data.OData.dll。它是 WCF 数据服务 (http://blogs.msdn.com/b/astoriateam/archive/2011/10/13/announcing-wcf-data-services-oct-2011-ctp-for-net-4-and-silverlight-4.aspx) 的最新 CTP 的一部分。 它是 OData 的低级读写器。它不解决 URL 处理,但读取和写入有效负载效果很好。 这里有一个用法示例:http://blogs.msdn.com/b/astoriateam/archive/2011/10/14/introducing-the-odata-library.aspx

关于c# - 如何在 C# 中实现动态 OData 客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8849559/

相关文章:

c# - 类型或模式的动态列表来解决变化类型问题?

javascript - 使用 fetch api 远程加载 md 文件并在客户端/浏览器上解析它

c# - 以通用方式设置空值的 DbParameter.DbType?

c# - 固定无法打开登录请求的数据库。登录失败

c# - 如何使用下拉列表对 gridview 进行排序

ios - 从 UIImageView 派生的动态创建的控件缺少函数

android - 使用 android 动态加载更多项目到 ListView 需要帮助

c# - Any<T>的相反方法是什么

python - 如何使用 Azure DevOps 的 python 客户端 API 将用户添加到 Azure DevOps?

c++ - boost::asio 客户端连接停止接收数据