设置客户端的常规方法是通过使用VS UI或datasvcutil读取odata元数据来生成模型。没有这一步,有没有办法做到这一点。
为什么呢?想象一下,尝试制作一个通用的odata UI(这不是我正在做的事情,但存在相同的需求)。我知道我可以做原始的HTTP / XML等,但这似乎是一个繁重的工作;寻找中途宿舍。
答案 0 :(得分:0)
客户端依赖CLR类型来描述要使用的实体的形状。因此,如果您需要一个通用客户端(它不知道它将要使用的实体的形状),那么您需要为每个查询动态生成这些类型(在执行查询之前,这可能很棘手)。简而言之,客户端不是为支持这种情况而构建的。 您可以查看OData Explorer,它是一个Silverlight应用程序并实现通用客户端。 (由于上述限制,它不使用WCF数据服务客户端)。这是此页面上的示例之一:http://www.odata.org/developers/odata-sdk。你可以在这里试试:http://www.silverlight.net/content/samples/odataexplorer/