qrt wrote:
LINQ obviously abstracts the act of retrieving data away and allows for a declarativ programming style.

But almost any application also needs to update existing and insert new persisted data in databases.


LINQ for SQL (previously called DLINQ) will hook up to property changed events of the objects that are retrieved using LINQ for SQL.

They will then track any changes you do to the objects, and when you instruct the DataContext to submit the changes back it will do so intelligently, i.e. topological sort so that deletes, inserts and updates are performed in valid sequence.