-
Type: Improvement
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: V4.0_CSD01
-
Fix Version/s: V4.0_CSD02
-
Component/s: Protocol
-
Labels:None
-
Environment:
[Applied]
-
Proposal:
-
Resolution:
Today service may or may not support $expand on navigation properties. The service is required to return an error if it can't support $expand, making it difficult for clients to have a consistent way to request that a graph be expanded.
Services are already allowed to return partial results in any collection of entities (including an expanded navigation property) by including a next link in the result. Clients must be prepared for such a next link in any response.
This actually gives a way that a service can trivially support $expand by returning an empty collection with a next link containing the navigation link. The client logic would then kick in and follow the next link in order to get the "rest" of the members. This gives the client a reliable way to ask for the expansion and all services the ability to give the client what they can.