Freigeben über


EntityKey.IsTemporary Eigenschaft

Definition

Ruft einen Wert ab, der angibt, ob der EntityKey temporär ist.

public:
 property bool IsTemporary { bool get(); };
public bool IsTemporary { get; }
member this.IsTemporary : bool
Public ReadOnly Property IsTemporary As Boolean

Eigenschaftswert

true, wenn der EntityKey temporär ist, andernfalls false.

Hinweise

Wenn eine neue Entität erstellt wird, definiert das Entity Framework einen temporären Schlüssel und legt die IsTemporary -Eigenschaft auf fest true. Wenn Sie die SaveChanges -Methode aufrufen, weist das Entity Framework einen permanenten Schlüssel zu und legt die IsTemporary -Eigenschaft auf fest false.

Hinweis

Temporäre Schlüssel werden automatisch vom Framework erstellt. Sie können vom Benutzer nicht direkt erstellt werden.

Temporäre Schlüssel verfügen über eine andere Vergleichssemantik als permanente Schlüssel:

  • Temporäre Schlüssel verwenden Verweisgleichheit. Das heißt, zwei Verweise auf dieselbe temporäre EntityKey-Instanz sind gleich. Andere EntityKey-Instanzen sind nicht gleich.

  • Permanente Schlüssel bestimmen Gleichheit auf Grundlage der Werte der enthaltenen Schlüsseleigenschaften und der EntitySet. Das heißt, dass zwei verschiedene EntityKey-Instanzen gleich sind, wenn ihre Entitätenmengen und ihre Schlüsselwerte gleich sind.

Außerdem verfügen temporäre Schlüssel im Gegensatz zu permanenten Schlüsseln über keine EntitySet oder Schlüsselwerte.

Wenn die AcceptChanges Methode für eine Entität ObjectStateEntry aufgerufen wird und die Entität vom Zustand in Unchanged den Added Zustand wechselt, berechnet das Entity Framework automatisch einen neuen permanenten Schlüssel für die Entität und synchronisiert alle temporären Schlüsselverweise.

Gilt für: