Transaction support

In the previous section, we learned that simultaneous changes by different users can be controlled by using a version column or the Concurrency Mode property. Sometimes the same user may have made several changes and some of the changes might not succeed. In this case, we need a way to control the behavior of the overall update result. This is handled by transaction support.

LINQ to Entities uses the same transaction mechanism as ADO.NET, that is, it uses implicit or explicit transactions.

Implicit transactions

By default, LINQ to Entities uses an implicit transaction for each SaveChanges call. All updates between two SaveChanges calls are wrapped within one transaction.

For example, in the following code, we are trying to update ...

Get WCF 4.5 Multi-Layer Services Development with Entity Framework now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.