Debe verificar sus propiedades en la columna GUID; lo que debe asegurarse es:
-
Auto Generated Values
se establece enTrue
(así que básicamente le dices a Linq-to-SQL que la base de datos generará el valor) -
Auto-Sync
debe establecerse enOnInsert
para que su objeto C# se complete con el nuevo valor después de llamar acontext.SubmitChanges()
Con estas dos configuraciones, debería obtener el comportamiento esperado:no es necesario configurar el GUID en el lado del cliente, la base de datos generará un nuevo valor y lo insertará, y lo recuperará justo después de la llamada a .SubmitChanges()