Expose Data as OData Through Web Services

app_1_110786998958803_3409WCF Data Services Toolkit has recently been released to make it easier to expose arbitrary data sources as OData services. Whether you want to wrap OData around an existing API (SOAP/REST/etc.), mash-up SQL Azure and Windows Azure Table storage, re-structure the shape of a legacy database, or expose any other data store you can come up with, the WCF Data Services Toolkit will help you out.

WCF Data Services provides the functionality for building OData services and clients on the .NET Framework. It makes adding OData on top of relational and in-memory data very trivial, and provides the extensibility for wrapping OData on top of any data source.

Examples of such data sources might be:

  • An existing web API
  • XML/CSV file(s)
  • Data stored within a proprietary software system

The toolkit also makes it easy to mash-up multiple data sources so that creating a "unified model" is possible, regardless how much disparate data you or your customers might have.

This project was created from the needs of our live partner services, such as eBay, Netflix, Facebook, Twitpic. It will continue to be iterated on as we discover new scenarios and needs during future partner engagements.

Scenarios

The toolkit fits the scenario of when you want to expose a non-relational data store (EF + WCF Data Services solves this scenario beautifully) as an OData service. When we say "data store" we really do mean anything you can think of (please be responsible though):

  • An XML file (or files)
  • An existing web API (or APIs)
  • A legacy database that you want to re-shape the exposed schema dramatically without touching the database
  • A proprietary software system that provides its data in a funky one-off format
  • A cloud database (e.g. SQL Server) mashed up with a large schema-less storage repository (e.g. Windows Azure Table storage)
  • A CSV file zipped together with a MySQL database
  • A SOAP API combined with an in-memory cache

Get the WCF Data Services Toolkit

Get the WCF Data Services Toolkit from Codeplex.

About OData

Open Data Protocol (OData) is a Web protocol for querying and updating data that provides a way to unlock your data and free it from silos that exist in applications today. OData does this by applying and building upon Web technologies such as HTTP, Atom Publishing Protocol (AtomPub) and JSON to provide access to information from a variety of applications, services, and stores.

 

Bruce D. KyleISV Architect Evangelist | Microsoft Corporation

cid:image010.png@01C9DEED.1FDB2200 cid:image011.png@01C9DEED.1FDB2200 cid:image012.gif@01C9DEED.1FDB2200 channel9