EntityKey.IsTemporary Propiedad

Definición

Obtiene un valor que indica si la EntityKey es de solo lectura.

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

Valor de propiedad

Es true si EntityKey es temporal; en caso contrario, es false.

Comentarios

Cuando se crea una nueva entidad, Entity Framework define la clave temporal y establece la IsTemporary propiedad trueen . Cuando se llama al SaveChanges método , Entity Framework asigna una clave permanente y establece la IsTemporary propiedad falseen .

Nota

El marco de trabajo es el que construye las claves temporales de manera automática; los usuarios no pueden construirlas directamente.

Las claves temporales tienen una semántica de comparación distinta de la de las claves permanentes:

  • Las claves temporales usan la igualdad de las referencias. Es decir, dos referencias a la misma instancia temporal de EntityKey son iguales, pero ninguna otra instancia de EntityKey lo es.

  • Las claves permanentes determinan la igualdad en función de los valores de las propiedades de clave contenidas y del EntitySet. Es decir, puede tener dos instancias de EntityKey independientes que serán iguales si sus conjuntos de entidades son los mismos y también lo son sus valores de clave.

Además, las claves temporales no tienen ningún EntitySet ni valores de clave, pero las claves permanentes sí.

Cuando se llama al AcceptChanges método en una entidad ObjectStateEntry y la entidad pasa del Added estado al Unchanged estado, Entity Framework calcula automáticamente una nueva clave permanente para la entidad y sincroniza todas las referencias de clave temporales.

Se aplica a