EntityKey.IsTemporary 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得值,這個值表示 EntityKey 是否為暫存。
public:
property bool IsTemporary { bool get(); };
public bool IsTemporary { get; }
member this.IsTemporary : bool
Public ReadOnly Property IsTemporary As Boolean
屬性值
如果 EntityKey 是暫存的,則為 true
,否則為 false
。
備註
建立新的實體時,Entity Framework 會定義暫存索引鍵,並將 屬性設定 IsTemporary 為 true
。 當您呼叫 SaveChanges 方法時,Entity Framework 會指派永久索引鍵,並將 屬性設定 IsTemporary 為 false
。
注意
暫存索引鍵是此架構自動建構的。使用者無法直接建構暫存索引鍵。
暫存索引鍵與永久索引鍵具有不同的比較語意:
暫存索引鍵會使用參考相等。 也就是說,完全相同之暫存 EntityKey 執行個體的兩個參考會相等,但是沒有其他 EntityKey 執行個體會相等。
永久索引鍵會根據包含的索引鍵屬性值和 EntitySet 來判斷是否相等。 也就是說,如果實體集相同,而且索引鍵值相等,您可能會有兩個相等的個別 EntityKey 執行個體。
此外,暫存索引鍵沒有任何 EntitySet 或索引鍵值,但是永久索引鍵有。
AcceptChanges在實體的 ObjectStateEntry 上呼叫 方法,而實體會從Added狀態轉換成Unchanged狀態時,Entity Framework 會自動計算實體的新永久索引鍵,並同步處理所有暫存索引鍵參考。