A Checklist for OData Feed publishers

Here's a minimal checklist to make sure your OData Service is available to a maximum number of clients and very functional out of the box .
I'll add more items to this list as we go along.

  1. Allow Silverlight clients to access your data.

    Silverlight applications running on a domain other than the one the Data Service is hosted on require a ClientAccessPolicy.xml file at the root of the webserver.
    Without a CAP.xml file , an in-browser Silverlight application cannot access the Data Service.
    Be nice to your Silverlight client apps, drop a CrossDomain.xml or a ClientAccessPolicy.xml file at the root of the Data Service
    Reference : Enabling X-Domain access to your Data Services
    note: SL4 apps can circumvent the need for CAP.xml file by being installed elevated and out of browser on client machines.

  2. Server Driven Paging for your entity sets

    Don't pay for bandwidth if you don't have to.
    PowerPivot and The OData Explorer support navigating next links , so you arent losing any client capability by enabling paging.
    Reference: Blog post on team blog

  3. Web Friendly Feed annotations for prettier feeds

    Put a couple of Feed annotations and generic browsers will love your feeds.
    Every feed requires at least an atom:title and/or atom:summary mapping .
    Reference for Entity Framework backed Data Services : Mapping EDM Types
    Reference for all other Data Services : Mapping CLR Types

  4. Make your entity sets read-only.

    If it shouldn't be edited , then it shouldn't be editable.
    Use EntitySetRights.AllRead in your DataServiceConfiguration.SetEntitySetRights call