One little crip I am having with LINQ to SQL is that when you build the DBML files within Visual Studio 2008, the default values from the database are not taken in to account.
This means that you need to set the default values against your object before it is saved or after the object is created.
This is a pain the the back side.
This articles provides a method to overcome this “Handling Default Values With LINQ to SQL“