存取實體框架中新插入的實體的 ID
實體框架中的一個常見任務涉及在資料庫插入後立即取得實體的 ID。 實體框架通常採用自動 ID 產生(如 SQL Server 中的 IDENTITY)。
標準方法
將實體新增至 ObjectSet 並呼叫 SaveChanges()
會自動填入 ID 屬性。 方法如下:
<code class="language-csharp">using (var context = new MyContext()) { context.MyEntities.Add(myNewObject); context.SaveChanges(); int id = myNewObject.Id; // The Id property is now populated }</code>
自訂 ID 產生
有時,您可能需要控制 ID 的產生。 實體框架的 DatabaseGeneratedOption
屬性提供了各種策略。
手動 ID 分配
對於手動指派的 ID,請使用 DatabaseGeneratedOption.None
。這會阻止實體框架產生 ID;您必須在新增實體之前設定它。
計算 ID
如果 ID 是計算出來的(不是從表中),請使用 DatabaseGeneratedOption.Computed
。實體框架在執行插入語句後檢索 ID。
總結
在實體框架中檢索新插入實體的 ID 通常很簡單。 自動 ID 產生是預設設置,但可以針對特定場景使用自訂選項。
以上是如何使用實體框架檢索新插入的實體的 ID?的詳細內容。更多資訊請關注PHP中文網其他相關文章!