I came across a bit of a glitch in using timestamps for checking concurrency violations in LINQ to SQL and thought I'd share. Say I've got a table like; create table Person ( id int identity primary key , firstName nvarchar(30), lastName nvarchar(30), timestamp ) so, we have a simple table that has a timestamp on it and I want to use that to detect any concurrency problems that I might have in LINQ to SQL. Let's populate this table with some data; insert person(firstname,lastname) values( 'first1' , 'last1' ) insert person(firstname,lastname) values( 'first2' , 'last2' ) insert person(firstname,lastname) values( 'first3' , 'last3' ) and then I can bring that into my LINQ to SQL environment and I can check what the concurrency options are set to; So, you can see that we've got Update Check set to Always and that means that the timestamp will be added to any where clauses for Deletes or Updates and if a particular update doesn't find any row to update because of that where clause then we have a concurrency violation...