1

我們在C#/ .NET/EF數據庫優先/ SQL Server環境中實現基於DDD的系統。我們的域實體與EF生成的實體分開,其中存儲庫負責與EF及其實體一起工作。我想爲新創建的實體生成系統生成的(數據庫生成/自動增量)ID。自然的選擇是使用GUID,但由於數據庫的大小,會有阻力。首選是有int ID。我們已經在過去使用了一種HiLo機制,但它看起來好像在EF中沒有模擬(或者至少是生產就緒的模擬)。系統生成的整數實體ID使用DDD風格的存儲庫首先與EF數據庫

有什麼辦法可以在SQL Server上擁有EF數據庫優先的唯一整數系統生成ID?

回答

0

不,實體框架不支持系統生成的ID。如果你想,你必須自己實現它可能覆蓋SaveChanges導出DbContext但我不會推薦你走這條路

+0

不太清楚你的意思是你的第一句話......它看起來像你建議使用數據庫生成的ID,這正是我試圖避免由於在工作單元模式中使用此方法的問題。 – boris

+0

我編輯了我的答案 –

+0

http://nhforge.org/blogs/nhibernate/archive/2009/03/20/nhibernate-poid-generators-revealed.aspx – boris

相關問題