Sayangnya, Linq to SQL tidak mendukung nilai default database. Lihat pertanyaan pertama di sini:
Apa yang mereka sarankan adalah Anda menyediakan implementasi metode Sisipkan untuk entitas yang dimaksud. Tanda tangannya adalah
partial void Insert[EntityName](Entity instance)
Jadi, jika Anda memiliki entitas bernama Person, yang ingin memiliki nilai default "Home" untuk bidang PhoneNumberDesc, Anda dapat menerapkannya dengan cara ini:
partial void InsertPerson(Person instance)
{
if (string.IsNullOrEmpty(instance.PhoneNumberDesc))
instance.PhoneNumberDesc = "Home";
var insertParams = new List<object>();
var insertStatement = "insert into ...";
// build the rest of the insert statement and fill in the parameter values here...
this.ExecuteQuery(typeof(Person), insertStatement, insertParams.ToArray());
}
Anda mungkin bisa lolos dengan mengimplementasikan acara OnCreated, yang dipanggil dengan setiap konstruktor untuk setiap entitas. Artikel ini menjelaskan sedikit tentang bagaimana poin ekstensibilitas di Linq To SQL:http://msdn.microsoft.com/en-us/library/bb882671.aspx
Secara keseluruhan, solusinya agak menyebalkan. Semoga berhasil!