1

我想根据 ownerid/Name 从 odata 过滤条件中检索数据。

这是我从 odata 收到的没有任何过滤条件的 json 格式数据的示例:

{
activityid: "20a82acf-093e-e711-8101-5065f38b85e1",
regardingobjectid: null,
prioritycode: {
Name: "Normal",
Value: 1
},
scheduledstart: "2017-05-21T10:00:00Z",
scheduledend: "2017-05-21T10:00:00Z",
location: null,
statecode: {
Name: "Completed",
Value: 1
},
ownerid: {
Id: "064f5f55-e930-e711-80fe-5065f38aba91",
Name: "Diana Lee"
},
list-id: "f9a57b07-ee3f-e711-8100-5065f38b0571",
view-id: "bc829d10-a49d-409d-9a61-918fedadbad9",
entity-permissions-enabled: null
},

当我使用过滤条件数据调用以下 url 时,正在检索:

~/_odata/Appointments?$filter=statecode/Value eq 1

但是当我使用以下过滤条件数据调用 url 时,没有检索到:

~/_odata/Appointments?$filter=ownerid/Name eq 'Diana Lee'

请帮助我根据所有者名称检索数据。

4

1 回答 1

0

一种可行的方法是扩展 Owner 关系,并过滤扩展的关系:

~/OrganizationData.svc/AppointmentSet?$expand=user_appointment&$filter=user_appointment/FullName eq 'Diana Lee'

您可以添加一个 select 子句来缩小投影范围:

~/OrganizationData.svc/AppointmentSet?$select=Subject,OwnerId,user_appointment/FullName&$expand=user_appointment&$filter=user_appointment/FullName eq 'Diana Lee'
于 2017-07-17T14:43:21.820 回答