Compartir a través de


RuntimeForeignKey Clase

Definición

Representa una relación en la que una clave externa compuesta de propiedades en el tipo de entidad dependiente hace referencia a una clave principal o alternativa correspondiente en el tipo de entidad principal.

public class RuntimeForeignKey : Microsoft.EntityFrameworkCore.Infrastructure.AnnotatableBase, Microsoft.EntityFrameworkCore.Metadata.Internal.IRuntimeForeignKey
type RuntimeForeignKey = class
    inherit AnnotatableBase
    interface IRuntimeForeignKey
    interface IForeignKey
    interface IReadOnlyForeignKey
    interface IReadOnlyAnnotatable
    interface IAnnotatable
Public Class RuntimeForeignKey
Inherits AnnotatableBase
Implements IRuntimeForeignKey
Herencia
RuntimeForeignKey
Implementaciones
IAnnotatable IReadOnlyAnnotatable IForeignKey Microsoft.EntityFrameworkCore.Metadata.Internal.IRuntimeForeignKey IReadOnlyForeignKey

Comentarios

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

Constructores

RuntimeForeignKey(IReadOnlyList<RuntimeProperty>, RuntimeKey, RuntimeEntityType, RuntimeEntityType, DeleteBehavior, Boolean, Boolean, Boolean, Boolean)

Se trata de una API interna que admite la infraestructura de Entity Framework Core y no está sujeta a los mismos estándares de compatibilidad que las API públicas. Se puede cambiar o quitar sin previo aviso en ninguna versión. Solo debe usarlo directamente en el código con extrema precaución y saber que hacerlo puede dar lugar a errores de aplicación al actualizar a una nueva versión de Entity Framework Core.

Propiedades

DebugView

Se trata de una API interna que admite la infraestructura de Entity Framework Core y no está sujeta a los mismos estándares de compatibilidad que las API públicas. Se puede cambiar o quitar sin previo aviso en ninguna versión. Solo debe usarlo directamente en el código con extrema precaución y saber que hacerlo puede dar lugar a errores de aplicación al actualizar a una nueva versión de Entity Framework Core.

DeclaringEntityType

Obtiene el tipo de entidad dependiente. Esto puede ser diferente del tipo definido en 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).

IsReadOnly

Indica si el objeto actual es de solo lectura.

(Heredado de AnnotatableBase)
Item[String]

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

(Heredado de AnnotatableBase)
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 a la que se dirige la relación.

Properties

Obtiene las propiedades de clave externa de la entidad dependiente.

ReferencingSkipNavigations

Se trata de una API interna que admite la infraestructura de Entity Framework Core y no está sujeta a los mismos estándares de compatibilidad que las API públicas. Se puede cambiar o quitar sin previo aviso en ninguna versión. Solo debe usarlo directamente en el código con extrema precaución y saber que hacerlo puede dar lugar a errores de aplicación al actualizar a una nueva versión de Entity Framework Core.

Métodos

AddAnnotation(String, Annotation)

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

(Heredado de AnnotatableBase)
AddAnnotation(String, Object)

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

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

Agrega anotaciones a este objeto.

(Heredado de AnnotatableBase)
AddAnnotations(IReadOnlyDictionary<String,Object>)

Agrega anotaciones a este objeto.

(Heredado de AnnotatableBase)
AddNavigation(RuntimeNavigation, Boolean)

Se trata de una API interna que admite la infraestructura de Entity Framework Core y no está sujeta a los mismos estándares de compatibilidad que las API públicas. Se puede cambiar o quitar sin previo aviso en ninguna versión. Solo debe usarlo directamente en el código con extrema precaución y saber que hacerlo puede dar lugar a errores de aplicación al actualizar a una nueva versión de Entity Framework Core.

AddRuntimeAnnotation(String, Annotation)

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 AnnotatableBase)
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 AnnotatableBase)
AddRuntimeAnnotations(IEnumerable<Annotation>)

Agrega anotaciones en tiempo de ejecución a este objeto.

(Heredado de AnnotatableBase)
AddRuntimeAnnotations(IReadOnlyDictionary<String,Object>)

Agrega anotaciones en tiempo de ejecución a este objeto.

(Heredado de AnnotatableBase)
CreateAnnotation(String, Object)

Crea una nueva anotación.

(Heredado de AnnotatableBase)
CreateRuntimeAnnotation(String, Object)

Crea una nueva anotación en tiempo de ejecución.

(Heredado de AnnotatableBase)
EnsureMutable()

Produce si el modelo es de solo lectura.

(Heredado de AnnotatableBase)
EnsureReadOnly()

Produce si el modelo no es de solo lectura.

(Heredado de AnnotatableBase)
FindAnnotation(String)

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

(Heredado de AnnotatableBase)
FindRuntimeAnnotation(String)

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

(Heredado de AnnotatableBase)
GetAnnotation(String)

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

(Heredado de AnnotatableBase)
GetAnnotations()

Obtiene todas las anotaciones del objeto actual.

(Heredado de AnnotatableBase)
GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg)

Obtiene el valor de la anotación en tiempo de ejecución con el nombre especificado, agregándolo si no existe uno.

(Heredado de AnnotatableBase)
GetRuntimeAnnotations()

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

(Heredado de AnnotatableBase)
OnAnnotationSet(String, Annotation, Annotation)

Se llama cuando se estableció o quitó una anotación.

(Heredado de AnnotatableBase)
RemoveAnnotation(String)

Quita la anotación especificada de este objeto.

(Heredado de AnnotatableBase)
RemoveRuntimeAnnotation(String)

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

(Heredado de AnnotatableBase)
SetAnnotation(String, Annotation, Annotation)

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 AnnotatableBase)
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 AnnotatableBase)
SetRuntimeAnnotation(String, Annotation, Annotation)

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 AnnotatableBase)
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 AnnotatableBase)
ToString()

Devuelve una cadena que representa el objeto actual.

Implementaciones de interfaz explícitas

IAnnotatable.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 AnnotatableBase)
IAnnotatable.FindRuntimeAnnotation(String)

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

(Heredado de AnnotatableBase)
IAnnotatable.GetRuntimeAnnotations()

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

(Heredado de AnnotatableBase)
IAnnotatable.RemoveRuntimeAnnotation(String)

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

(Heredado de AnnotatableBase)
IAnnotatable.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 AnnotatableBase)
IForeignKey.DeclaringEntityType

Obtiene el tipo de entidad dependiente. Esto puede ser diferente del tipo definido en 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).

IForeignKey.DependentToPrincipal

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

IForeignKey.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, los proveedores de bases de datos usan este método (y otras extensiones). Por lo general, no se usa en el código de aplicación.

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, los proveedores de bases de datos usan este método (y otras extensiones). Por lo general, no se usa en el código de aplicación.

IForeignKey.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).

IForeignKey.PrincipalKey

Obtiene la clave principal o alternativa a la que se dirige la relación.

IForeignKey.PrincipalToDependent

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

IForeignKey.Properties

Obtiene las propiedades de clave externa de la entidad dependiente.

IReadOnlyAnnotatable.FindAnnotation(String)

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

(Heredado de AnnotatableBase)
IReadOnlyAnnotatable.GetAnnotations()

Obtiene todas las anotaciones del objeto actual.

(Heredado de AnnotatableBase)
IReadOnlyAnnotatable.Item[String]

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

(Heredado de AnnotatableBase)
IReadOnlyForeignKey.DeclaringEntityType

Obtiene el tipo de entidad dependiente. Esto puede ser diferente del tipo definido en 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).

IReadOnlyForeignKey.DeleteBehavior

Obtiene 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 elimina la relación.

IReadOnlyForeignKey.DependentToPrincipal

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

IReadOnlyForeignKey.GetReferencingSkipNavigations()

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

IReadOnlyForeignKey.IsOwnership

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

IReadOnlyForeignKey.IsRequired

Obtiene 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.

IReadOnlyForeignKey.IsRequiredDependent

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

IReadOnlyForeignKey.IsUnique

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

IReadOnlyForeignKey.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).

IReadOnlyForeignKey.PrincipalKey

Obtiene la clave principal o alternativa a la que se dirige la relación.

IReadOnlyForeignKey.PrincipalToDependent

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

IReadOnlyForeignKey.Properties

Obtiene las propiedades de clave externa de la entidad dependiente.

IRuntimeForeignKey.DependentKeyValueFactory

Representa una relación en la que una clave externa compuesta de propiedades en el tipo de entidad dependiente hace referencia a una clave principal o alternativa correspondiente en el tipo de entidad principal.

IRuntimeForeignKey.DependentsMapFactory

Representa una relación en la que una clave externa compuesta de propiedades en el tipo de entidad dependiente hace referencia a una clave principal o alternativa correspondiente en el tipo de entidad principal.

Métodos de extensión

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, los proveedores de bases de datos usan este método (y otras extensiones). Por lo general, no se usa en el código de aplicación.

GetNavigation(IForeignKey, Boolean)

Devuelve una navegación asociada a esta clave externa.

GetRelatedEntityType(IForeignKey, IEntityType)

Obtiene el tipo de entidad relacionado con el especificado.

IsBaseLinking(IForeignKey)

Devuelve un valor que indica si la clave externa está definida en la clave principal y apunta a la misma clave principal.

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 depurar y puede cambiar arbitrariamente entre versiones.

AnnotationsToDebugString(IAnnotatable, Int32)

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

FindSharedObjectRootForeignKey(IForeignKey, StoreObjectIdentifier)

Busca el primero IConventionForeignKey que se asigna a la misma restricción en un objeto compartido similar a una tabla.

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

FindSharedObjectRootForeignKey(IReadOnlyForeignKey, StoreObjectIdentifier)

Busca el primero IForeignKey que se asigna a la misma restricción en un objeto compartido similar a una tabla.

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

GetConstraintName(IForeignKey)

Devuelve el nombre de la restricción de clave externa.

GetConstraintName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Devuelve el nombre de la restricción de clave externa.

GetConstraintName(IReadOnlyForeignKey)

Devuelve el nombre de la restricción de clave externa.

GetConstraintName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Devuelve el nombre de la restricción de clave externa.

GetDefaultName(IForeignKey)

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

GetDefaultName(IForeignKey, 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.

GetDefaultName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

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

GetMappedConstraints(IForeignKey)

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

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 similar a tabla.

GetFluentApiCalls(IForeignKey, IAnnotationCodeGenerator, Boolean)

Obtiene las llamadas API fluidas para configurar una clave externa.

Se aplica a