ADO.NET Data Service gives you the ability to do:
The reason it is read only for LINQ to SQL is that Data Services needs to object model that it is exposing to implement IUpdatable. LINQ to SQL does not.
There is a solution – you need implement IUpdatable for LINQ to SQL. This isn’t necessarily as bad as it sounds – if you can narrow down the implementation to how you are using LINQ to SQL.
MikeT had a stab at doing just this back in Dec 2007. The details are wrong (as this was based on a CTP build) – but the essence/approach he used is spot on.
[EDITED – Mike pointed out he revisited this more recently]
MikeT took an alternative approach in June of this year. He discussed four possible approaches (including the one outlined above) but settled on a slightly more generic approach and included an implementation for the 12 method version of IUpdatable which we ultimately shipped.
The above demonstrates that LINQ to SQL can be used effectively with Data Services. However the better approach IMHO is – switch to the ADO.NET Entity Framework!