之前用幾個ORM去測試速度,想說寫了都寫了,就順便把測試用的語法也貼出來,這樣我健忘時還可以回來找code參考。
測試的相關資料請看
這篇。
下面就是以LINQ to SQL去做Insert / Select Top / Where In 的範例,我沒有測試過很多種寫法,如果有效率更好的寫法,麻煩請跟我說,感謝。
Insert
public static void LinqInsert(string name, int score)
{
LinqModelDataContext DB = new LinqModelDataContext();
tbl_Speed_Test st = new tbl_Speed_Test();
st.name = name;
st.score = score;
DB.tbl_Speed_Tests.InsertOnSubmit(st);
try
{
DB.SubmitChanges();
}
catch(Exception e)
{
throw e;
}
}
這段語法相當於SQL Command的
insert into [Died_Test].[dbo].[tbl_Speed_Test] (name,score) values(@name,@score)
實際上測試的Table有三個欄位,不過Prime Key的Guid我設成DB自動產生,所以就不塞值進去了,這種方式需要手動對dbml改點設定,詳情可以見這篇"
Linq to SQL, Entity Framework, SubSonic 3.0 對於預設欄位的處理方式"。