展开并过滤OData

展开并过滤OData,odata,Odata,我正试图构建一个GET请求,以仅获取特定数据,但我在使用OData时遇到了问题。 从API中提取的对象如下所示: { "PostalCode": "48103", "FranchiseId": 397, "Franchise": { "ConceptId": 1, "CreatedDateTime": "2015-10-20T18:36:46.353", "ModifiedDateTime": "2018-01-26

我正试图构建一个GET请求,以仅获取特定数据,但我在使用OData时遇到了问题。 从API中提取的对象如下所示:

    {
    "PostalCode": "48103",
    "FranchiseId": 397,
    "Franchise": {
        "ConceptId": 1,
        "CreatedDateTime": "2015-10-20T18:36:46.353",
        "ModifiedDateTime": "2018-01-26T14:35:33.447",
        "DeletedDateTime": null,
        "DoingBusinessAs": "Appliance.inc",
        "Status": "Active",
        "IsOwned": true,
        "FranchiseeName": "Appliance Inc - Ann Arbor, MI - MLY 1001",
        "LicenseNumber": "ML89023",
        "City": "Ann Arbor",
        "StateAbbr": "MI",
        "PostalCode": "48104",
        "ContactFirstName": "Doug",
        "ContactLastName": "Smith",
        "Country": "United States"
    }
},
我正在执行此GET请求以获取该数据:

#url#&$expand=Franchise&$select=FranchiseId, PostalCode
我之所以使用&$expand=francement,只是因为我需要来自特许经营对象的特许经营人,但我不想提取该对象的其余数据。 如何编写请求,以便只提取三个字段:PostalCode、特许ID、特许经营人。对象的外观应如下所示:

{
"PostalCode": "48103",
"FranchiseId": 397,
"FranchiseeName": "Appliance.inc"
}
我假设url是实体的ODataURI的占位符,例如。http://server/odata/entityName.

以下URL应获取您需要的数据:

http://server/odata/entityName?$select=邮政编码、特许ID和$expand=特许经营$select=特许经营者

应仅返回所需数据,但仍具有与完整数据相同的结构,例如:

{
  "PostalCode": "48103",
  "FranchiseId": 397,
  "Franchise": {
    "FranchiseeName": "Appliance.inc"
  }
}

是的,这很有效,它正是选择了您在这个示例上发布的内容。非常感谢。