Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

EntityKey.IsTemporary Property

Gets a value that indicates whether the EntityKey is temporary.

Namespace:  System.Data
Assembly:  System.Data.Entity (in System.Data.Entity.dll)
public bool IsTemporary { get; }

Property Value

Type: System.Boolean
true if the EntityKey is temporary; otherwise, false.

When a new entity is created, the Entity Framework defines temporary key and sets the IsTemporary property to true. When you call the SaveChanges method, the Entity Framework assigns a permanent key and sets the IsTemporary property to false.

NoteNote

Temporary keys are constructed automatically by the framework; they cannot be constructed directly by a user.

Temporary keys have different comparison semantics than permanent keys:

  • Temporary keys use reference equality. That is, two references to the exact same temporary EntityKey instance are equal but no other EntityKey instances are equal.

  • Permanent keys determine equality based on the values of the contained key properties and the EntitySet. That is, you can have two separate EntityKey instances that are equal if their entity sets are the same and their key values are equal.

In addition, temporary keys have no EntitySet or key values, but permanent keys do.

When the AcceptChanges method is called on an entity's ObjectStateEntry and the entity transitions from the Added state to Unchanged state, the Entity Framework automatically computes a new permanent key for the entity and synchronizes all temporary key references.

.NET Framework

Supported in: 4.5.1, 4.5, 4, 3.5 SP1

.NET Framework Client Profile

Supported in: 4

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.