Lenguaje

IMutableForeignKey Interfaz

Definición

Representa una relación en la que las propiedades de clave externa de un tipo de entidad dependiente hacen referencia a una clave principal o alternativa correspondiente en un tipo de entidad principal.

public interface IMutableForeignKey : Microsoft.EntityFrameworkCore.Metadata.IForeignKey, Microsoft.EntityFrameworkCore.Metadata.IMutableAnnotatable
public interface IMutableForeignKey : Microsoft.EntityFrameworkCore.Metadata.IMutableAnnotatable, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyForeignKey
type IMutableForeignKey = interface
    interface IForeignKey
    interface IAnnotatable
    interface IMutableAnnotatable
type IMutableForeignKey = interface
    interface IReadOnlyForeignKey
    interface IReadOnlyAnnotatable
    interface IMutableAnnotatable
Public Interface IMutableForeignKey
Implements IForeignKey, IMutableAnnotatable
Public Interface IMutableForeignKey
Implements IMutableAnnotatable, IReadOnlyForeignKey
Implementaciones

Comentarios

Esta interfaz se usa durante la creación del modelo y permite modificar los metadatos. Una vez compilado el modelo, IForeignKey representa una vista de solo lectura de los mismos metadatos.

Consulte Modelado de tipos de entidad y relaciones para obtener más información y ejemplos.

Propiedades

Nombre Description
DeclaringEntityType

Obtiene el tipo de entidad dependiente. Esto puede ser diferente del tipo que se define cuando la relación se define un tipo derivado en una jerarquía de herencia (ya que Properties las propiedades se pueden definir en un tipo base).

DeleteBehavior

Obtiene o establece un valor que indica cómo se aplica una operación de eliminación a las entidades dependientes de la relación cuando se elimina la entidad de seguridad o se severa la relación.

DependentToPrincipal

Obtiene la propiedad de navegación en el tipo de entidad dependiente que apunta a la entidad principal.

IsConstrained

Establece un valor que indica si la relación está restringida, es decir, respaldada por una garantía de que existe una clave de entidad de seguridad coincidente para cada valor de clave externa establecida.

IsOwnership

Obtiene o establece un valor que indica si esta relación define la propiedad. Si es true, siempre se debe tener acceso a la entidad dependiente a través de la navegación desde la entidad principal.

IsRequired

Establece un valor que indica si se requiere la entidad principal. Si truees , la entidad dependiente siempre debe asignarse a una entidad de entidad de seguridad válida.

IsRequiredDependent

Establece un valor que indica si se requiere la entidad dependiente. Si truees , la entidad principal siempre debe tener asignada una entidad dependiente válida.

IsUnique

Obtiene o establece un valor que indica si los valores asignados a las propiedades de clave externa son únicos.

Item[String]

Obtiene el valor de la anotación con el nombre especificado y devuelve null si no existe.

(Heredado de IReadOnlyAnnotatable)
PrincipalEntityType

Obtiene el tipo de entidad principal al que se dirige esta relación. Esto puede ser diferente del tipo definido en cuando la relación tiene como destino un tipo derivado en una jerarquía de herencia (ya que PrincipalKey la clave se define en el tipo base de la jerarquía).

PrincipalKey

Obtiene la clave principal o alternativa que tiene como destino la relación.

PrincipalToDependent

Obtiene la propiedad de navegación en el tipo de entidad principal que apunta a la entidad dependiente.

Properties

Obtiene las propiedades de clave externa de la entidad dependiente.

Métodos

Nombre Description
AddAnnotation(String, Object)

Agrega una anotación a este objeto. Produce si ya existe una anotación con el nombre especificado.

(Heredado de IMutableAnnotatable)
AddAnnotations(IEnumerable<IAnnotation>)

Agrega anotaciones a un objeto .

(Heredado de IMutableAnnotatable)
AddRuntimeAnnotation(String, Object)

Agrega una anotación en tiempo de ejecución a este objeto. Produce si ya existe una anotación con el nombre especificado.

(Heredado de IAnnotatable)
AnnotationsToDebugString(Int32)

Obtiene la cadena de depuración de todas las anotaciones declaradas en el objeto .

(Heredado de IReadOnlyAnnotatable)
FindAnnotation(String)

Obtiene la anotación con el nombre especificado y devuelve null si no existe.

(Heredado de IReadOnlyAnnotatable)
FindRuntimeAnnotation(String)

Obtiene la anotación en tiempo de ejecución con el nombre especificado y devuelve null si no existe.

(Heredado de IAnnotatable)
FindRuntimeAnnotationValue(String)

Obtiene el valor de la anotación en tiempo de ejecución con el nombre especificado, devolviendo null si no existe.

(Heredado de IAnnotatable)
GetAnnotation(String)

Obtiene la anotación con el nombre especificado, que produce si no existe.

(Heredado de IReadOnlyAnnotatable)
GetAnnotations()

Obtiene todas las anotaciones del objeto actual.

(Heredado de IReadOnlyAnnotatable)
GetDependentKeyValueFactory()

Crea un generador para los valores de clave basados en los valores de clave externa tomados de varias formas de datos de entidad.

Normalmente, este método lo usan los proveedores de bases de datos (y otras extensiones). Por lo general, no se usa en el código de aplicación.

(Heredado de IForeignKey)
GetDependentKeyValueFactory<TKey>()

Crea un generador para los valores de clave basados en los valores de clave externa tomados de varias formas de datos de entidad.

Normalmente, este método lo usan los proveedores de bases de datos (y otras extensiones). Por lo general, no se usa en el código de aplicación.

(Heredado de IForeignKey)
GetNavigation(Boolean)

Devuelve una navegación asociada a esta clave externa.

GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg)

Obtiene el valor de la anotación en tiempo de ejecución con el nombre especificado y lo agrega si no existe uno.

(Heredado de IAnnotatable)
GetReferencingSkipNavigations()

Obtiene todas las navegaciones de omisión mediante esta clave externa.

GetRelatedEntityType(IReadOnlyEntityType)

Obtiene el tipo de entidad relacionado con el especificado.

GetRuntimeAnnotations()

Obtiene todas las anotaciones en tiempo de ejecución del objeto actual.

(Heredado de IAnnotatable)
HasDependentToPrincipal(MemberInfo)
Obsoletos.

Establece la propiedad de navegación en el tipo de entidad dependiente que apunta a la entidad principal.

HasDependentToPrincipal(PropertyInfo)

Establece la propiedad de navegación en el tipo de entidad dependiente que apunta a la entidad principal.

HasDependentToPrincipal(String)
Obsoletos.

Establece la propiedad de navegación en el tipo de entidad dependiente que apunta a la entidad principal.

HasPrincipalToDependent(MemberInfo)
Obsoletos.

Establece la propiedad de navegación en el tipo de entidad principal que apunta a la entidad dependiente.

HasPrincipalToDependent(PropertyInfo)

Establece la propiedad de navegación en el tipo de entidad principal que apunta a la entidad dependiente.

HasPrincipalToDependent(String)
Obsoletos.

Establece la propiedad de navegación en el tipo de entidad principal que apunta a la entidad dependiente.

IsBaseLinking()

Devuelve un valor que indica si la clave externa se define en la clave principal y apunta a la misma clave principal.

(Heredado de IReadOnlyForeignKey)
IsEffectivelyRequired()

Devuelve un valor que indica si se garantiza que un valor establecido para esta clave externa haga referencia a una entidad de seguridad existente; es decir, la relación es necesaria (IsRequired) y restringida (IsConstrained). La consulta consulta esto para decidir si se puede expandir una navegación dependiente a entidad de seguridad con una combinación interna (y si se puede eliminar dicha combinación); Una relación sin restricciones siempre se trata como opcional incluso cuando sus propiedades de clave externa no aceptan valores NULL.

(Heredado de IReadOnlyForeignKey)
RemoveAnnotation(String)

Quita la anotación especificada de este objeto.

(Heredado de IMutableAnnotatable)
RemoveRuntimeAnnotation(String)

Quita la anotación en tiempo de ejecución especificada de este objeto.

(Heredado de IAnnotatable)
SetAnnotation(String, Object)

Establece la anotación almacenada en la clave especificada. Sobrescribe la anotación existente si ya existe una anotación con el nombre especificado.

(Heredado de IMutableAnnotatable)
SetDependentToPrincipal(MemberInfo)

Establece la propiedad de navegación en el tipo de entidad dependiente que apunta a la entidad principal.

SetDependentToPrincipal(String)

Establece la propiedad de navegación en el tipo de entidad dependiente que apunta a la entidad principal.

SetOrRemoveAnnotation(String, Object)

Establece la anotación almacenada bajo el nombre especificado. Sobrescribe la anotación existente si ya existe una anotación con el nombre especificado. Quita la anotación existente si null se proporciona.

(Heredado de IMutableAnnotatable)
SetPrincipalToDependent(MemberInfo)

Establece la propiedad de navegación en el tipo de entidad principal que apunta a la entidad dependiente.

SetPrincipalToDependent(String)

Establece la propiedad de navegación en el tipo de entidad principal que apunta a la entidad dependiente.

SetProperties(IReadOnlyList<IMutableProperty>, IMutableKey)

Establece las propiedades de clave externa y esa clave de entidad de seguridad de destino.

SetRuntimeAnnotation(String, Object)

Establece la anotación en tiempo de ejecución almacenada en la clave especificada. Sobrescribe la anotación existente si ya existe una anotación con el nombre especificado.

(Heredado de IAnnotatable)
ToDebugString(MetadataDebugStringOptions, Int32)

Crea una representación legible de los metadatos especificados.

Advertencia: No confíe en el formato de la cadena devuelta. Está diseñado solo para la depuración y puede cambiar arbitrariamente entre versiones.

(Heredado de IReadOnlyForeignKey)

Métodos de extensión

Nombre Description
AddAnnotations(IMutableAnnotatable, IEnumerable<IAnnotation>)

Agrega anotaciones a un objeto .

AnnotationsToDebugString(IAnnotatable, Int32)

Obtiene la cadena de depuración de todas las anotaciones declaradas en el objeto .

FindSharedObjectRootForeignKey(IForeignKey, StoreObjectIdentifier)

Busca la primera IForeignKey que se asigna a la misma restricción en un objeto de tipo tabla compartido.

Normalmente, este método lo usan los proveedores de bases de datos (y otras extensiones). Por lo general, no se usa en el código de aplicación.

FindSharedObjectRootForeignKey(IMutableForeignKey, StoreObjectIdentifier)

Busca la primera IMutableForeignKey que se asigna a la misma restricción en un objeto de tipo tabla compartido.

Normalmente, este método lo usan los proveedores de bases de datos (y otras extensiones). Por lo general, no se usa en el código de aplicación.

FindSharedObjectRootForeignKey(IReadOnlyForeignKey, StoreObjectIdentifier)

Busca la primera IForeignKey que se asigna a la misma restricción en un objeto de tipo tabla compartido.

Normalmente, este método lo usan los proveedores de bases de datos (y otras extensiones). Por lo general, no se usa en el código de aplicación.

GetAnnotation(IAnnotatable, String)

Obtiene la anotación con el nombre especificado, que produce si no existe.

GetAnnotation(IMutableAnnotatable, String)

Obtiene la anotación con el nombre especificado, que produce si no existe.

GetConstraintName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Devuelve el nombre de restricción de clave externa.

GetConstraintName(IForeignKey)

Devuelve el nombre de restricción de clave externa.

GetConstraintName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Devuelve el nombre de restricción de clave externa.

GetConstraintName(IReadOnlyForeignKey)

Devuelve el nombre de restricción de clave externa.

GetDefaultName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Devuelve el nombre de restricción predeterminado que se usaría para esta clave externa.

GetDefaultName(IForeignKey)

Devuelve el nombre de restricción predeterminado que se usaría para esta clave externa.

GetDefaultName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Devuelve el nombre de restricción predeterminado que se usaría para esta clave externa.

GetDefaultName(IReadOnlyForeignKey)

Devuelve el nombre de restricción predeterminado que se usaría para esta clave externa.

GetDependentKeyValueFactory<TKey>(IForeignKey)

Crea un generador para los valores de clave basados en los valores de clave externa tomados de varias formas de datos de entidad.

Normalmente, este método lo usan los proveedores de bases de datos (y otras extensiones). Por lo general, no se usa en el código de aplicación.

GetMappedConstraints(IForeignKey)

Obtiene las restricciones de clave externa a las que se asigna la clave externa.

GetNavigation(IForeignKey, Boolean)

Devuelve una navegación asociada a esta clave externa.

GetNavigation(IMutableForeignKey, Boolean)

Devuelve una navegación asociada a esta clave externa.

GetOrAddAnnotation(IMutableAnnotatable, String, String)

Obtiene la anotación existente con una clave determinada o agrega una nueva anotación si no existe.

GetRelatedEntityType(IForeignKey, IEntityType)

Obtiene el tipo de entidad relacionado con el especificado.

GetRelatedEntityType(IMutableForeignKey, IMutableEntityType)

Obtiene el tipo de entidad relacionado con el especificado.

IsBaseLinking(IForeignKey)

Devuelve un valor que indica si la clave externa se define en la clave principal y apunta a la misma clave principal.

IsExcludedFromMigrations(IReadOnlyForeignKey)

Devuelve un valor que indica si la restricción de clave externa se excluye de las migraciones.

IsRowInternal(IReadOnlyForeignKey, StoreObjectIdentifier)

Devuelve un valor que indica si esta clave externa está entre dos tipos de entidad que comparten el mismo objeto de almacén de tipo tabla.

Relational(IForeignKey)

Obtiene los metadatos específicos de la base de datos relacional para una clave externa.

Relational(IMutableForeignKey)

Obtiene los metadatos específicos de la base de datos relacional para una clave externa.

SetConstraintName(IMutableForeignKey, String)

Establece el nombre de restricción de clave externa.

SetIsExcludedFromMigrations(IMutableForeignKey, Nullable<Boolean>)

Establece un valor que indica si la restricción de clave externa se excluye de las migraciones.

SetOrRemoveAnnotation(IMutableAnnotatable, String, Object)

Establece la anotación almacenada bajo el nombre especificado. Sobrescribe la anotación existente si ya existe una anotación con el nombre especificado. Quita la anotación existente si null se proporciona.

Sqlite(IForeignKey)

Obtiene los metadatos específicos de SQLite para una clave externa.

Sqlite(IMutableForeignKey)

Obtiene los metadatos específicos de SQLite para una clave externa.

SqlServer(IForeignKey)

Obtiene el SQL Server metadatos específicos de una clave externa.

SqlServer(IMutableForeignKey)

Obtiene el SQL Server metadatos específicos de una clave externa.

ToDebugString(IForeignKey, MetadataDebugStringOptions, Int32)

Crea una representación legible de los metadatos especificados.

Advertencia: No confíe en el formato de la cadena devuelta. Está diseñado solo para la depuración y puede cambiar arbitrariamente entre versiones.

Se aplica a