tags:

views:

160

answers:

2

What exactly is OData and how important/necessary is it to start learning this new concept, wrt implementing data services?

Also why is the WCF Data Services documentation so tightly coupled with OData?

Edit: Based on answers here's a follow-up question - I shouldn't be trying to implement WCF Data Services sans OData,or I can do that but that would mean doing it the tougher way(reinventing the wheel)?

+2  A: 

You should probably just google around but Open Data Protocol is just a standard for querying/updating data. It defines a rest base standard for updating/retrieving data. There is a tight dependency between WCF Data Services because WCF DS are complient with the OData protocol. Without it Data Services wouldn't exist, and vice versa ;) OData is a child of MS.

WCF Data Services provide you a quick and easy way to service client side queries using LINQ, Which is Microsoft's Integrated Query Language. Microsoft has made it very easy to stand up Data Services which provide you with a facade into the database.

As for how much do you really need to know about OData? Unless you are going to be creating your own provider you dont need a very deep knowledge.

If you want to start getting into the internals check out this "OData by Example" from MS. In order to understand the proper use of Data Services i would suggest you look at REST and LINQ.

Nix
Correct me if I am wrong, but didn't WCF DS come before OData? If so, there was a way for them to exist without OData. Just to make it clear, I got nothing against learning something new (OData) but just wanna understand why I need to,in the first place.
alwayslearning
You are correct. WCF DS First... but now there is a standard. Personally i think they did it in attempt to get people to buy into the concept that they are actually needed.
Nix
+2  A: 

To answer the second question first, OData (or the Open Data Protocol) is the evolution of Project Astoria/ADO.NET Data Services and is Microsoft's attempt to create an "open standard" for creating readable/writable data using REST. OData is the open protocol that ADO.NET/WCF Data Services uses to implement its functionality, and was directly created as a result of use in several Microsoft products, thus the tight connection.

As for the WHAT, OData is, in essense, a set of extensions to the Atom Publishing Protocol that enable data representation, querying, alternate formatting (JSON), etc.

Here are a couple of good resources to get you started:

Brandon Satrom