Compartir a través de


CollectionOwnershipBuilder<TEntity,TDependentEntity> Clase

Definición

Proporciona una API sencilla para configurar una propiedad uno a uno.

public class CollectionOwnershipBuilder<TEntity,TDependentEntity> : Microsoft.EntityFrameworkCore.Metadata.Builders.CollectionOwnershipBuilder where TEntity : class where TDependentEntity : class
type CollectionOwnershipBuilder<'Entity, 'DependentEntity (requires 'Entity : null and 'DependentEntity : null)> = class
    inherit CollectionOwnershipBuilder
Public Class CollectionOwnershipBuilder(Of TEntity, TDependentEntity)
Inherits CollectionOwnershipBuilder

Parámetros de tipo

TEntity
TDependentEntity
Herencia
CollectionOwnershipBuilder<TEntity,TDependentEntity>

Constructores

CollectionOwnershipBuilder<TEntity,TDependentEntity>(EntityType, EntityType, InternalRelationshipBuilder)

Esta API admite la infraestructura de Entity Framework Core y no está pensada para usarse directamente desde el código. Esta API puede cambiar o quitarse en versiones futuras.

CollectionOwnershipBuilder<TEntity,TDependentEntity>(InternalRelationshipBuilder, CollectionOwnershipBuilder<TEntity,TDependentEntity>, Boolean, Boolean, Boolean)

Esta API admite la infraestructura de Entity Framework Core y no está pensada para usarse directamente desde el código. Esta API puede cambiar o quitarse en versiones futuras.

Propiedades

Builder

Esta API admite la infraestructura de Entity Framework Core y no está pensada para usarse directamente desde el código. Esta API puede cambiar o quitarse en versiones futuras.

(Heredado de ReferenceCollectionBuilderBase)
DependentEntityType

Obtiene el tipo de entidad dependiente utilizado para configurar esta relación.

(Heredado de ReferenceCollectionBuilderBase)
Metadata

Clave externa que representa esta relación.

(Heredado de ReferenceCollectionBuilderBase)
OwnedEntityType

Tipo de entidad propiedad que se va a configurar.

(Heredado de CollectionOwnershipBuilder)
PrincipalEntityType

Obtiene el tipo de entidad principal utilizado para configurar esta relación.

(Heredado de ReferenceCollectionBuilderBase)

Métodos

FindRelatedEntityType(String, String)

Esta API admite la infraestructura de Entity Framework Core y no está pensada para usarse directamente desde el código. Esta API puede cambiar o quitarse en versiones futuras.

(Heredado de CollectionOwnershipBuilder)
FindRelatedEntityType(Type, String)

Esta API admite la infraestructura de Entity Framework Core y no está pensada para usarse directamente desde el código. Esta API puede cambiar o quitarse en versiones futuras.

(Heredado de CollectionOwnershipBuilder)
HasChangeTrackingStrategy(ChangeTrackingStrategy)

Configura el ChangeTrackingStrategy objeto que se va a usar para este tipo de entidad. Esta estrategia indica cómo el contexto detecta los cambios en las propiedades de una instancia del tipo de entidad.

HasData(Object[])

Configura esta entidad para que tenga datos de inicialización. Se usa para generar migraciones de movimiento de datos.

HasData(TDependentEntity[])

Configura esta entidad para que tenga datos de inicialización. Se usa para generar migraciones de movimiento de datos.

HasEntityTypeAnnotation(String, Object)

Agrega o actualiza una anotación en el tipo de entidad propiedad. Si ya existe una anotación con la clave especificada en annotation , se actualizará su valor.

HasForeignKey(Expression<Func<TDependentEntity,Object>>)

Configura las propiedades que se usarán como clave externa para esta relación.

Si los nombres de propiedad especificados no existen en el tipo de entidad, se agregarán nuevas propiedades de estado de sombra para que actúen como clave externa. Una propiedad de estado de sombra es una que no tiene una propiedad correspondiente en la clase de entidad. El valor actual de la propiedad se almacena en en ChangeTracker lugar de almacenarse en instancias de la clase de entidad.

Si HasPrincipalKey(Expression<Func<TEntity,Object>>) no se especifica , se intentará que coincida con el tipo de datos y el orden de las propiedades de clave externa con la clave principal del tipo de entidad principal. Si no coinciden, se agregarán nuevas propiedades de estado de sombra que forman un índice único al tipo de entidad principal para que actúe como clave de referencia.

HasForeignKey(String[])

Configura las propiedades que se usarán como clave externa para esta relación.

Si los nombres de propiedad especificados no existen en el tipo de entidad, se agregarán nuevas propiedades de estado de sombra para que actúen como clave externa. Una propiedad de estado de sombra es una que no tiene una propiedad correspondiente en la clase de entidad. El valor actual de la propiedad se almacena en en ChangeTracker lugar de almacenarse en instancias de la clase de entidad.

Si HasPrincipalKey(String[]) no se especifica , se intentará que coincida con el tipo de datos y el orden de las propiedades de clave externa con la clave principal del tipo de entidad principal. Si no coinciden, se agregarán nuevas propiedades de estado de sombra que forman un índice único al tipo de entidad principal para que actúe como clave de referencia.

HasForeignKeyAnnotation(String, Object)

Agrega o actualiza una anotación en la clave externa. Si ya existe una anotación con la clave especificada en annotation , se actualizará su valor.

HasIndex(Expression<Func<TDependentEntity,Object>>)

Configura un índice en las propiedades especificadas. Si hay un índice existente en el conjunto de propiedades especificado, se devolverá el índice existente para la configuración.

HasIndex(String[])

Configura un índice en las propiedades especificadas. Si hay un índice existente en el conjunto de propiedades especificado, se devolverá el índice existente para la configuración.

(Heredado de CollectionOwnershipBuilder)
HasKey(Expression<Func<TDependentEntity,Object>>)

Establece las propiedades que componen la clave principal para este tipo de entidad propiedad.

HasKey(String[])

Establece las propiedades que componen la clave principal para este tipo de entidad propiedad.

(Heredado de CollectionOwnershipBuilder)
HasOne(String, String)

Configura una relación en la que este tipo de entidad tiene una referencia que apunta a una única instancia del otro tipo de la relación.

Tenga en cuenta que llamar a este método sin parámetros configurará explícitamente este lado de la relación para que no use ninguna propiedad de navegación, incluso si existe dicha propiedad en el tipo de entidad. Si se va a usar la propiedad de navegación, debe especificarse.

Después de llamar a este método, debe encadenar una llamada a WithMany(String) o WithOne(String) para configurar completamente la relación. Llamar solo a este método sin la llamada encadenada no generará una relación válida.

(Heredado de CollectionOwnershipBuilder)
HasOne(Type, String)

Configura una relación en la que este tipo de entidad tiene una referencia que apunta a una única instancia del otro tipo de la relación.

Tenga en cuenta que llamar a este método sin parámetros configurará explícitamente este lado de la relación para que no use ninguna propiedad de navegación, incluso si existe dicha propiedad en el tipo de entidad. Si se va a usar la propiedad de navegación, debe especificarse.

Después de llamar a este método, debe encadenar una llamada a WithMany(String) o WithOne(String) para configurar completamente la relación. Llamar solo a este método sin la llamada encadenada no generará una relación válida.

(Heredado de CollectionOwnershipBuilder)
HasOne<TNewRelatedEntity>(Expression<Func<TDependentEntity,TNewRelatedEntity>>)

Configura una relación en la que este tipo de entidad tiene una referencia que apunta a una única instancia del otro tipo de la relación.

Tenga en cuenta que al llamar a este método sin parámetros se configurará explícitamente este lado de la relación para que no use ninguna propiedad de navegación, aunque exista dicha propiedad en el tipo de entidad. Si se va a usar la propiedad de navegación, debe especificarse.

Después de llamar a este método, debe encadenar una llamada a WithMany(Expression<Func<TRelatedEntity,IEnumerable<TEntity>>>) o WithOne(Expression<Func<TRelatedEntity,TEntity>>) para configurar completamente la relación. Llamar solo a este método sin la llamada encadenada no generará una relación válida.

HasOne<TNewRelatedEntity>(String)

Configura una relación en la que este tipo de entidad tiene una referencia que apunta a una única instancia del otro tipo de la relación.

Tenga en cuenta que al llamar a este método sin parámetros se configurará explícitamente este lado de la relación para que no use ninguna propiedad de navegación, aunque exista dicha propiedad en el tipo de entidad. Si se va a usar la propiedad de navegación, debe especificarse.

Después de llamar a este método, debe encadenar una llamada a WithMany(String) o WithOne(String) para configurar completamente la relación. Llamar solo a este método sin la llamada encadenada no generará una relación válida.

HasPrincipalKey(Expression<Func<TEntity,Object>>)

Configura las propiedades únicas que tiene como destino esta relación. Normalmente, solo llamaría a este método si desea usar propiedades distintas de la clave principal como propiedades principales. Si las propiedades especificadas aún no son una restricción única (o la clave principal), se introducirá una nueva restricción única.

HasPrincipalKey(String[])

Configura las propiedades únicas que tiene como destino esta relación. Normalmente, solo llamaría a este método si desea usar propiedades distintas de la clave principal como propiedades principales. Si las propiedades especificadas aún no son una restricción única (o la clave principal), se introducirá una nueva restricción única.

Ignore(Expression<Func<TDependentEntity,Object>>)

Excluye la propiedad especificada del tipo de entidad. Este método se usa normalmente para quitar propiedades del tipo de entidad propiedad que se agregaron por convención.

Ignore(String)

Excluye la propiedad especificada del tipo de entidad. Este método se usa normalmente para quitar propiedades del tipo de entidad propiedad que se agregaron por convención.

OnDelete(DeleteBehavior)

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

OwnsMany(String, String)

Configura una relación en la que la entidad de destino es propiedad (o parte de) de esta entidad.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren acceder a ella a través de la entidad propietaria mediante la navegación correspondiente.

(Heredado de CollectionOwnershipBuilder)
OwnsMany(String, String, Action<CollectionOwnershipBuilder>)

Configura una relación en la que este tipo de entidad proporciona identidad al otro tipo de la relación.

(Heredado de CollectionOwnershipBuilder)
OwnsMany(Type, String)

Configura una relación en la que la entidad de destino es propiedad (o parte de) de esta entidad.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren acceder a ella a través de la entidad propietaria mediante la navegación correspondiente.

(Heredado de CollectionOwnershipBuilder)
OwnsMany(Type, String, Action<CollectionOwnershipBuilder>)

Configura una relación en la que este tipo de entidad proporciona identidad al otro tipo de la relación.

(Heredado de CollectionOwnershipBuilder)
OwnsMany<TNewDependentEntity>(Expression<Func<TDependentEntity,IEnumerable<TNewDependentEntity>>>)

Configura una relación en la que la entidad de destino es propiedad de (o parte de) esta entidad.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren tener acceso a ella a través de la entidad propietaria mediante la navegación correspondiente.

OwnsMany<TNewDependentEntity>(Expression<Func<TDependentEntity, IEnumerable<TNewDependentEntity>>>, Action<CollectionOwnershipBuilder<TDependentEntity, TNewDependentEntity>>)

Configura una relación en la que la entidad de destino es propiedad de (o parte de) esta entidad.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren tener acceso a ella a través de la entidad propietaria mediante la navegación correspondiente.

OwnsMany<TNewDependentEntity>(String)

Configura una relación en la que la entidad de destino es propiedad de (o parte de) esta entidad.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren tener acceso a ella a través de la entidad propietaria mediante la navegación correspondiente.

OwnsMany<TNewDependentEntity>(String, Action<CollectionOwnershipBuilder<TDependentEntity,TNewDependentEntity>>)

Configura una relación en la que la entidad de destino es propiedad de (o parte de) esta entidad.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren tener acceso a ella a través de la entidad propietaria mediante la navegación correspondiente.

OwnsOne(String, String)

Configura una relación en la que la entidad de destino es propiedad (o parte de) de esta entidad. El valor de clave de entidad de destino siempre se propaga desde la entidad a la que pertenece.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren acceder a ella a través de la entidad propietaria mediante la navegación correspondiente.

(Heredado de CollectionOwnershipBuilder)
OwnsOne(String, String, Action<ReferenceOwnershipBuilder>)

Configura una relación en la que la entidad de destino es propiedad (o parte de) de esta entidad. El valor de clave de entidad de destino siempre se propaga desde la entidad a la que pertenece.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren acceder a ella a través de la entidad propietaria mediante la navegación correspondiente.

(Heredado de CollectionOwnershipBuilder)
OwnsOne(Type, String)

Configura una relación en la que la entidad de destino es propiedad (o parte de) de esta entidad. El valor de clave de entidad de destino siempre se propaga desde la entidad a la que pertenece.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren acceder a ella a través de la entidad propietaria mediante la navegación correspondiente.

(Heredado de CollectionOwnershipBuilder)
OwnsOne(Type, String, Action<ReferenceOwnershipBuilder>)

Configura una relación en la que la entidad de destino es propiedad (o parte de) de esta entidad. El valor de clave de entidad de destino siempre se propaga desde la entidad a la que pertenece.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren acceder a ella a través de la entidad propietaria mediante la navegación correspondiente.

(Heredado de CollectionOwnershipBuilder)
OwnsOne<TNewRelatedEntity>(String)

Configura una relación en la que la entidad de destino es propiedad de (o parte de) esta entidad. El valor de clave de entidad de destino siempre se propaga desde la entidad a la que pertenece.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren tener acceso a ella a través de la entidad propietaria mediante la navegación correspondiente.

OwnsOne<TRelatedEntity>(Expression<Func<TDependentEntity,TRelatedEntity>>)

Configura una relación en la que la entidad de destino es propiedad de (o parte de) esta entidad. El valor de clave de entidad de destino siempre se propaga desde la entidad a la que pertenece.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren tener acceso a ella a través de la entidad propietaria mediante la navegación correspondiente.

OwnsOne<TRelatedEntity>(Expression<Func<TDependentEntity,TRelatedEntity>>, Action<ReferenceOwnershipBuilder<TDependentEntity,TRelatedEntity>>)

Configura una relación en la que la entidad de destino es propiedad de (o parte de) esta entidad. El valor de clave de entidad de destino siempre se propaga desde la entidad a la que pertenece.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren tener acceso a ella a través de la entidad propietaria mediante la navegación correspondiente.

OwnsOne<TRelatedEntity>(String, Action<ReferenceOwnershipBuilder<TDependentEntity,TRelatedEntity>>)

Configura una relación en la que la entidad de destino es propiedad de (o parte de) esta entidad. El valor de clave de entidad de destino siempre se propaga desde la entidad a la que pertenece.

El tipo de entidad de destino para cada relación de propiedad se trata como un tipo de entidad diferente aunque la navegación sea del mismo tipo. La configuración del tipo de entidad de destino no se aplica al tipo de entidad de destino de otras relaciones de propiedad.

La mayoría de las operaciones de una entidad propiedad requieren tener acceso a ella a través de la entidad propietaria mediante la navegación correspondiente.

Property(String)

Devuelve un objeto que se puede usar para configurar una propiedad del tipo de entidad propiedad. Si no existe ninguna propiedad con el nombre especificado, se agregará una nueva propiedad.

Al agregar una nueva propiedad con esta sobrecarga, el nombre de la propiedad debe coincidir con el nombre de una propiedad o campo CLR en el tipo de entidad. Esta sobrecarga no se puede usar para agregar una nueva propiedad de estado de sombra.

(Heredado de CollectionOwnershipBuilder)
Property(Type, String)

Devuelve un objeto que se puede usar para configurar una propiedad del tipo de entidad propiedad. Si no existe ninguna propiedad con el nombre especificado, se agregará una nueva propiedad.

Al agregar una nueva propiedad, si existe una propiedad con el mismo nombre en la clase de entidad, se agregará al modelo. Si no existe ninguna propiedad en la clase de entidad, se agregará una nueva propiedad de estado de sombra. Una propiedad de estado de sombra es una que no tiene una propiedad correspondiente en la clase de entidad. El valor actual de la propiedad se almacena en en ChangeTracker lugar de almacenarse en instancias de la clase de entidad.

(Heredado de CollectionOwnershipBuilder)
Property<TProperty>(Expression<Func<TDependentEntity,TProperty>>)

Devuelve un objeto que se puede usar para configurar una propiedad del tipo de entidad propiedad. Si no existe ninguna propiedad con el nombre especificado, se agregará una nueva propiedad.

Al agregar una nueva propiedad, si existe una propiedad con el mismo nombre en la clase de entidad, se agregará al modelo. Si no existe ninguna propiedad en la clase de entidad, se agregará una nueva propiedad de estado de sombra. Una propiedad de estado de sombra es aquella que no tiene una propiedad correspondiente en la clase de entidad. El valor actual de la propiedad se almacena en en ChangeTracker lugar de almacenarse en instancias de la clase de entidad.

Property<TProperty>(String)

Devuelve un objeto que se puede usar para configurar una propiedad del tipo de entidad propiedad. Si no existe ninguna propiedad con el nombre especificado, se agregará una nueva propiedad.

Al agregar una nueva propiedad, si existe una propiedad con el mismo nombre en la clase de entidad, se agregará al modelo. Si no existe ninguna propiedad en la clase de entidad, se agregará una nueva propiedad de estado de sombra. Una propiedad de estado de sombra es una que no tiene una propiedad correspondiente en la clase de entidad. El valor actual de la propiedad se almacena en en ChangeTracker lugar de almacenarse en instancias de la clase de entidad.

(Heredado de CollectionOwnershipBuilder)
UsePropertyAccessMode(PropertyAccessMode)

Establece el objeto PropertyAccessMode que se va a usar para todas las propiedades de este tipo de entidad.

De forma predeterminada, el campo de respaldo, si se encuentra uno por convención o se ha especificado, se usa cuando se construyen nuevos objetos, normalmente cuando se consultan entidades desde la base de datos. Las propiedades se usan para todos los demás accesos. Llamar a este método cambiará ese comportamiento para todas las propiedades de este tipo de entidad, tal como se describe en la PropertyAccessMode enumeración .

La llamada a este método invalida todas las propiedades de este tipo de entidad en cualquier modo de acceso establecido en el modelo.

Implementaciones de interfaz explícitas

IInfrastructure<IMutableModel>.Instance

Modelo al que pertenece esta relación.

(Heredado de ReferenceCollectionBuilderBase)
IInfrastructure<InternalEntityTypeBuilder>.Instance

Obtiene el generador interno que se usa para configurar el tipo de entidad propiedad.

(Heredado de CollectionOwnershipBuilder)
IInfrastructure<InternalRelationshipBuilder>.Instance

Obtiene el generador interno que se usa para configurar esta relación.

(Heredado de ReferenceCollectionBuilderBase)

Métodos de extensión

GetInfrastructure<T>(IInfrastructure<T>)

Obtiene el valor de una propiedad que se oculta mediante IInfrastructure<T>.

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.

HasConstraintName(CollectionOwnershipBuilder, String)

Configura el nombre de restricción de clave externa para esta relación al establecer como destino una base de datos relacional.

HasConstraintName<TEntity,TDependentEntity>(CollectionOwnershipBuilder<TEntity,TDependentEntity>, String)

Configura el nombre de restricción de clave externa para esta relación al establecer como destino una base de datos relacional.

ToTable(CollectionOwnershipBuilder, String)

Configura la vista o tabla a la que se asigna la entidad al establecer como destino una base de datos relacional.

ToTable(CollectionOwnershipBuilder, String, String)

Configura la vista o tabla a la que se asigna la entidad al establecer como destino una base de datos relacional.

ToTable<TEntity,TDependentEntity>(CollectionOwnershipBuilder<TEntity,TDependentEntity>, String)

Configura la vista o tabla a la que se asigna la entidad al establecer como destino una base de datos relacional.

ToTable<TEntity,TDependentEntity>(CollectionOwnershipBuilder<TEntity,TDependentEntity>, String, String)

Configura la vista o tabla a la que se asigna la entidad al establecer como destino una base de datos relacional.

ForSqlServerIsMemoryOptimized(CollectionOwnershipBuilder, Boolean)

Configura la tabla a la que se asigna la entidad al establecer como destino SQL Server como optimizada para memoria.

ForSqlServerIsMemoryOptimized<TEntity,TRelatedEntity>(CollectionOwnershipBuilder<TEntity,TRelatedEntity>, Boolean)

Configura la tabla a la que se asigna la entidad al establecer como destino SQL Server como optimizada para memoria.

Se aplica a