2010-02-18 53 views
2

我正在爲學校開發LINQ to Entities項目。我正在使用一個db2數據庫,通過生成的序列生成關鍵值,例如。 INSERT INTO STUDENT VALUES(NEXT VALUE FOR STUDENT_NUM, 'Raphael', 'Joasia');是否有一個相當於LINQ to Entities中的NEXT VALUE運算符,它們將執行相同的操作,還是需要更改我的數據庫在生成密鑰方面的操作方式?我確實使用這個序列在幾個外鍵表上生成值。如果有辦法做到這一點,這將是一個巨大的幫助。Linq to Entities:序列中的下一個值

回答

0

除非你可以自己生成密鑰,否則你需要使用存儲過程,就像你說的那樣。 Entity Framework的第一個版本並不能很好地處理邊緣情況,即使這看起來不像邊緣案例...

+0

的演示ya看起來像存儲過程它是迄今爲止我還沒有找到任何東西 – 2010-02-18 07:23:51

0

這裏提出了一個相關的問題。 ADO.NET Entity Framework and identity columns簡短的回答是實體框架可以很好地處理int鍵而不是GUID鍵。詳細信息在以前提出的問題的答案中。也不會有用於創建新對象的ID參數。

+0

你會說這可以通過使用存儲過程在需要序列值的表上的插入,或者這將被認爲是一種骯髒的代碼方式(希望儘可能保持標準爲基礎,因爲這將被用作ASP.net MVC – 2010-02-18 06:53:42