wcf-data-services:有多个过滤器

时间:2012-02-14 13:51:02

标签: wcf-data-services odata

我的wcf-data-service中有两个enities:

RequestServer

一个请求可以分配给多个服务器,而在服务器上可以有多个请求。

我想查询分配给特定数量服务器的所有请求(在此示例中:分配给ID = 1 ID = 2的服务器的所有请求),如:< / p>

http://localhost/MyDataService/Request?$filter=(Server.ID eq 1 and Server.ID eq 2)

然而,这当然行不通。 odata有可能吗?如果不是:有解决方法吗?

1 个答案:

答案 0 :(得分:2)

使用RTM位这是不可能的。但是在OData V3中,我们添加了应该允许的任何/所有运算符。这样的事情应该有效:

/ Requests?$ filter = Servers / any(s:s / ID eq 1)和Servers / any(s:s / ID eq 2)

您可以使用最新的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

如果您需要留在V2,您可以编写服务操作来为您执行此操作。