While we worked hard to make it such that any HTTP client can easily consume an ADO.NET Data Service, we are also working on client libraries for the .NET Framework, Silverlight and ASP.NET AJAX to up the level of abstraction clients written on those platforms.  The .NET Framework an ASP.NET AJAX libraries shipped with the Dec 2007 CTP of ADO.NET Data Services and the Silverlight library is in the works.

As noted above, one way to consume an ADO.NET Data Service is by using the .NET Framework-based client library provided in the Dec 2007.  The API essentially lets you work with a local object graph and have that graph get persisted back to your data store by converting the operations on the object graph to HTTP requests to your ADO.NET Data Service. 

To query an ADO.NET Data Service from a .NET application, the client library supports constructing queries against remote data services using LINQ.  In essence the library provides a strongly typed query experience via LINQ, where each LINQ query is translated by the library to HTTP URIs of the target data service, thus enabling "LINQ to ADO.NET Data Services".  For a nice walk through of how this works, please see Andy Conrad's (ADO.NET Data Services Dev Lead) post here: Linq to REST

 

-Mike Flasko

Program Manager, ADO.NET Data Services ("Project Astoria')