Fine-Tuning Data Access
Customizing API Requests
The following properties provide the granular control useful for integrating with nonstandard APIs or to access more advanced OData functionality.
- CustomUrlParams: Set this to append query string parameters onto the request that the provider builds.
Note that if this property is not set you must set Url to the service document to avoid an error.
- ContinueOnError: The provider builds batch requests to OData 4.0 services when batch APIs in the underlying driver interface are invoked; for example, when your application makes a batch request.
When this property is set, errors are returned in a temporary table to avoid breaking execution.
- UseEtags: Etags can be used by OData clients to check if a resource has changed on the server and avoid concurrency problems.
If you do not need to surface this functionality or if your OData service does not return Etags, set this property to false. - Cookies: If you need to provide cookies obtained outside the provider, you can set them in this value.
- CustomHeaders: You can use this property to add any value to any HTTP request header.
Fine Tuning Data Access
Set the following properties to control how the provider models OData APIs as a database:
- NavigationPropertiesAsViews: By default, the provider models navigation properties as views.
This enables access to related entities, even though these entities may not be linked by a foreign key in your OData service. - SupportsExpand: If your API does not support the $expand parameter, set this property to avoid an error when NavigationPropertiesAsViews is set.
If this is the case for your API, specify the base entity's primary key in the WHERE clause to access navigation properties. - DataFormat: Set this property to JSON or XML. Otherwise, the provider uses the default format defined by the service.
- ODataVersion: Use this to override the version detected by the provider. This is useful if your application supports an older OData version.
- UseIdUrl: By default the provider returns the direct URL to an entity as the primary key. By setting this to false, the entity key is returned.
- UseSimpleNames: Set this to true to return only alphanumeric characters in column names. This can help you to avoid SQL escapes and errors in SQL-based tools.
- ServerTimeZone: By default, the provider assumes the server's Edm.DateTime values are GMT and converts them to and from the installed machine's local timezone accordingly.
If the server's Edm.DateTime values are known to apply to a different timezone, then set this property to that timezone (i.e. EST).