Since service supports per controller configuration, we may consider to make an ODataControllerAttribute which register the ODataModelBinder to service and place the attribute on EntitySetController.<br /><br />So users don't need to write [FromODataUri] everywhere. If they derive from EntitySetController, they don't need to write anything additional to support it.<br /><br />Following scenarios requires user to specify the attribute right now:<br />1. Navigation property actions<br />2. Create link and delete link actions<br />3. Odata actions<br />4. User overrides actions from EntitySetController<br /><br />It's very easy to miss it.
Comments: I tried to implement this, but ran into an issue because not all parameters are necessarily going to follow the OData format. The specific issue I ran into was that we're setting navigation properties in the route data as "PropertyName" but the ODataModelBinder expects strings as " 'value' ".
Comments: I tried to implement this, but ran into an issue because not all parameters are necessarily going to follow the OData format. The specific issue I ran into was that we're setting navigation properties in the route data as "PropertyName" but the ODataModelBinder expects strings as " 'value' ".