This is my own notes on doing optimistic concurrency checks with Linq to SQL in an ASP.NET application.
For total newbies there’s a short intro to concurrency problems here
The docs about how to actually do the checks are pretty good IMHO:
Of course the simplest way of actually telling which version a database row is is the “rowversion” column type:
Digging deeper, Linq to SQL is integrated with Transactions in .NET (and Windows):