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.
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 ...