4.2.5 Retrieve a Single Entity and Its Directly Related Entities by Using the Verbose JSON Format
The following example illustrates the exchange of messages that is required for a client to retrieve a Customer entity (with EntityKey value equal to "ALFKI") and its associated Order EntityType instances. This example uses the Verbose JSON Format for all messages.
Request:
-
GET /service.svc/Customers('ALFKI')?$expand=Orders HTTP/1.1 Host: host Accept: application/json;odata=verbose DataServiceVersion: 1.0 MaxDataServiceVersion: 3.0
Response:
-
HTTP/1.1 200 OK Date: Fri, 12 Dec 2008 17:17:11 GMT Content-Type: application/json;odata=verbose Content-Length: nnn DataServiceVersion: 3.0 {"d": { "__metadata": { "uri": "Customers(\'ALFKI\')", "type": "SampleModel.Customer", "etag": "W/\"X\'000000000000FA01\'\"" "properties" : { "Orders" : { "associationuri" : "Customer(\'ALFKI\')/SampleModel.Customer/$links/Orders" }} }, "CustomerID": "ALFKI", "CompanyName": "Alfreds Futterkiste", "Address": { "Street": "57 Contoso St", "City": "Seattle", "Location": { "crs": { "type": "name", "properties": { "name": "EPSG:4326" } }, "type": "Point", "coordinates": [-127.9324, 49.2345] } }, "Version": "AAAAAAAA+gE=", "Orders": [ { "__metadata": { "uri": "Orders(1)", "type": "SampleModel.Order" "properties" : { "Customer" : { "associationuri" : "Orders(1)/SampleModel.Order/$links/Customer", }, "OrderLines" : { "associationuri" : "Orders(1)/SampleModel.Order/$links/OrderLines", }} }, "OrderID": 1, "ShippedDate": "\/Date(872467200000)\/", "Customer": { "__deferred": { "uri": "Orders(1)/SampleModel.Order/Customer" } } "OrderLines": { "__deferred": { "uri": "Orders(1)/SampleModel.Order/OrderLines" } } }, { "__metadata": { "uri": "Orders(2)", "type": "SampleModel.Order" "properties" : { "Customer" : { "associationuri" : "Orders(2)/SampleModel.Order/$links/Customer", }, "OrderLines" : { "associationuri" : "Orders(2)/SampleModel.Order/$links/OrderLines", }} }, "OrderID": 2, "ShippedDate": "\/Date(875836800000)\/", "Customer": { "__deferred": { "uri": "Orders(2)/SampleModel.Order/Customer" } } "OrderLines": { "__deferred": { "uri": "Orders(2)/SampleModel.Order/OrderLines" } } } ] } }