查询同一搜索词的多个OData实体

时间:2012-01-23 20:53:47

标签: wcf odata

我的客户有一个提供多个不同顶级实体的Web服务。假设有三个特别感兴趣的内容:组织,部门和活动。

客户希望能够同时在所有这三个实体中搜索一个术语,而不必进行三次单独的调用。例如,“返回名称中包含 bread ”的所有记录。

虽然展开关键字乍一看似乎是解决方案,但这只提供了父实体的视图。

我怀疑这是不能通过OData的工作方式来完成的,但我需要在回到客户端之前得到一个确定的答案。

2 个答案:

答案 0 :(得分:2)

除非服务器为此目的提供服务操作(无论如何设计都会非常棘手,它应返回什么类型?),然后在一个查询中就不可能了。

另一方面,客户端可以在一个批处理请求中发送三个查询。所以这只是服务器的一次往返。可能够好。

答案 1 :(得分:1)

您可以向服务添加webget以执行此功能。您必须包装响应对象。