ComplexTypePropertyBuilder Classe

Définition

Fournit une API simple pour la configuration d’un IMutableProperty.

public class ComplexTypePropertyBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Builders.IConventionPropertyBuilder>
type ComplexTypePropertyBuilder = class
    interface IInfrastructure<IConventionPropertyBuilder>
Public Class ComplexTypePropertyBuilder
Implements IInfrastructure(Of IConventionPropertyBuilder)
Héritage
ComplexTypePropertyBuilder
Dérivé
Implémente

Remarques

Les instances de cette classe sont retournées à partir de méthodes lors de l’utilisation de l’API ModelBuilder et elle n’est pas conçue pour être construite directement dans le code de votre application.

Pour plus d’informations et d’exemples, consultez Modélisation de types et de relations complexes .

Constructeurs

ComplexTypePropertyBuilder(IMutableProperty)

Il s’agit d’une API interne qui prend en charge l’infrastructure Entity Framework Core et qui n’est pas soumise aux mêmes normes de compatibilité que les API publiques. Il peut être modifié ou supprimé sans préavis dans n’importe quelle version. Vous devez uniquement l’utiliser directement dans votre code avec une extrême prudence et sachant que cela peut entraîner des échecs d’application lors de la mise à jour vers une nouvelle version d’Entity Framework Core.

Propriétés

Metadata

Propriété en cours de configuration.

Méthodes

HasAnnotation(String, Object)

Ajoute ou met à jour une annotation sur la propriété . Si une annotation avec la clé spécifiée dans annotation existe déjà, sa valeur est mise à jour.

HasConversion(Type)

Configure la propriété de sorte que la valeur de la propriété soit convertie avant l’écriture dans la base de données et convertie lors de la lecture à partir de la base de données.

HasConversion(Type, Type)

Configure la propriété de sorte que la valeur de la propriété soit convertie avant l’écriture dans la base de données et convertie lors de la lecture à partir de la base de données.

HasConversion(Type, Type, Type)

Configure la propriété de sorte que la valeur de la propriété soit convertie avant l’écriture dans la base de données et convertie lors de la lecture à partir de la base de données.

HasConversion(Type, ValueComparer)

Configure la propriété de sorte que la valeur de la propriété soit convertie avant l’écriture dans la base de données et convertie lors de la lecture à partir de la base de données.

HasConversion(Type, ValueComparer, ValueComparer)

Configure la propriété de sorte que la valeur de la propriété soit convertie avant l’écriture dans la base de données et convertie lors de la lecture à partir de la base de données.

HasConversion(ValueConverter)

Configure la propriété afin que la valeur de la propriété soit convertie vers et à partir de la base de données à l’aide du donné ValueConverter.

HasConversion(ValueConverter, ValueComparer)

Configure la propriété afin que la valeur de la propriété soit convertie vers et à partir de la base de données à l’aide du donné ValueConverter.

HasConversion(ValueConverter, ValueComparer, ValueComparer)

Configure la propriété afin que la valeur de la propriété soit convertie vers et à partir de la base de données à l’aide du donné ValueConverter.

HasConversion<TConversion,TComparer,TProviderComparer>()

Configure la propriété de sorte que la valeur de la propriété soit convertie avant l’écriture dans la base de données et convertie lors de la lecture à partir de la base de données.

HasConversion<TConversion,TComparer>()

Configure la propriété de sorte que la valeur de la propriété soit convertie avant l’écriture dans la base de données et convertie lors de la lecture à partir de la base de données.

HasConversion<TConversion>()

Configure la propriété de sorte que la valeur de la propriété soit convertie avant l’écriture dans la base de données et convertie lors de la lecture à partir de la base de données.

HasConversion<TConversion>(ValueComparer)

Configure la propriété de sorte que la valeur de la propriété soit convertie avant l’écriture dans la base de données et convertie lors de la lecture à partir de la base de données.

HasConversion<TConversion>(ValueComparer, ValueComparer)

Configure la propriété de sorte que la valeur de la propriété soit convertie avant l’écriture dans la base de données et convertie lors de la lecture à partir de la base de données.

HasField(String)

Définit le champ de stockage à utiliser pour cette propriété.

HasMaxLength(Int32)

Configure la longueur maximale des données pouvant être stockées dans cette propriété. La longueur maximale ne peut être définie que sur les propriétés du tableau (y compris les String propriétés).

HasPrecision(Int32)

Configure la précision de la propriété.

HasPrecision(Int32, Int32)

Configure la précision et l'échelle de la propriété.

HasSentinel(Object)

Configure la valeur qui sera utilisée pour déterminer si la propriété a été définie ou non. Si la propriété est définie sur la valeur sentinelle, elle est considérée comme non définie. Par défaut, la valeur sentinelle est la valeur par défaut CLR pour le type de la propriété.

HasValueGenerator(Type)

Configure le ValueGenerator qui générera des valeurs pour cette propriété.

HasValueGenerator<TGenerator>()

Configure le ValueGenerator qui générera des valeurs pour cette propriété.

HasValueGeneratorFactory(Type)

Configure le ValueGeneratorFactory pour la création d’un ValueGenerator à utiliser pour générer des valeurs pour cette propriété.

HasValueGeneratorFactory<TFactory>()

Configure le ValueGeneratorFactory pour la création d’un ValueGenerator à utiliser pour générer des valeurs pour cette propriété.

IsConcurrencyToken(Boolean)

Configure si cette propriété doit être utilisée comme jeton d’accès concurrentiel. Lorsqu’une propriété est configurée en tant que jeton d’accès concurrentiel, la valeur de la base de données est vérifiée lorsqu’une instance de ce type complexe est mise à jour ou supprimée pendant SaveChanges() pour s’assurer qu’elle n’a pas changé depuis que le instance a été récupéré à partir de la base de données. Si elle a changé, une exception est levée et les modifications ne sont pas appliquées à la base de données.

IsRequired(Boolean)

Configure si cette propriété doit avoir une valeur affectée ou null s’il s’agit d’une valeur valide. Une propriété ne peut être configurée comme non obligatoire que si elle est basée sur un type CLR qui peut être affecté null.

IsRowVersion()

Configure la propriété en tant que ValueGeneratedOnAddOrUpdate() et IsConcurrencyToken(Boolean).

IsUnicode(Boolean)

Configure si la propriété est capable de conserver des caractères Unicode. Ne peut être défini que sur les String propriétés.

UsePropertyAccessMode(PropertyAccessMode)

Définit le PropertyAccessMode à utiliser pour cette propriété.

ValueGeneratedNever()

Configure une propriété pour qu’elle n’ait jamais de valeur générée par la base de données lorsqu’une instance de ce type complexe est enregistrée.

ValueGeneratedOnAdd()

Configure une propriété pour qu’une valeur soit générée uniquement lors de l’enregistrement d’une nouvelle entité, sauf si une valeur non null et non temporaire a été définie, auquel cas la valeur définie sera enregistrée à la place. La valeur peut être générée par un générateur de valeur côté client ou peut être générée par la base de données dans le cadre de l’enregistrement de l’entité.

ValueGeneratedOnAddOrUpdate()

Configure une propriété pour qu’une valeur soit générée lors de l’enregistrement d’une entité nouvelle ou existante.

ValueGeneratedOnUpdate()

Configure une propriété pour qu’une valeur soit générée lors de l’enregistrement d’une entité existante.

ValueGeneratedOnUpdateSometimes()

Configure une propriété pour qu’une valeur soit générée dans certaines conditions lors de l’enregistrement d’une entité existante.

Implémentations d’interfaces explicites

IInfrastructure<IConventionPropertyBuilder>.Instance

Générateur interne utilisé pour configurer la propriété.

Méthodes d’extension

GetInfrastructure<T>(IInfrastructure<T>)

Obtient la valeur d’une propriété masquée à l’aide de IInfrastructure<T>.

Cette méthode est généralement utilisée par les fournisseurs de base de données (et d’autres extensions). Il n’est généralement pas utilisé dans le code d’application.

HasColumnName(ComplexTypePropertyBuilder, String)

Configure la colonne à laquelle la propriété est mappée lors du ciblage d’une base de données relationnelle.

HasColumnOrder(ComplexTypePropertyBuilder, Nullable<Int32>)

Configure l’ordre de la colonne à laquelle la propriété est mappée.

HasColumnType(ComplexTypePropertyBuilder, String)

Configure le type de données de la colonne à laquelle la propriété est mappée lors du ciblage d’une base de données relationnelle. Il doit s’agir du nom de type complet, y compris la précision, l’échelle, la longueur, etc.

HasComment(ComplexTypePropertyBuilder, String)

Configure un commentaire à appliquer à la colonne

HasComputedColumnSql(ComplexTypePropertyBuilder)

Configure la propriété pour qu’elle soit mappée à une colonne calculée lors du ciblage d’une base de données relationnelle.

HasComputedColumnSql(ComplexTypePropertyBuilder, String)

Configure la propriété pour qu’elle soit mappée à une colonne calculée lors du ciblage d’une base de données relationnelle.

HasComputedColumnSql(ComplexTypePropertyBuilder, String, Nullable<Boolean>)

Configure la propriété pour qu’elle soit mappée à une colonne calculée lors du ciblage d’une base de données relationnelle.

HasDefaultValue(ComplexTypePropertyBuilder)

Configure la valeur par défaut pour la colonne à laquelle la propriété est mappée lors du ciblage d’une base de données relationnelle.

HasDefaultValue(ComplexTypePropertyBuilder, Object)

Configure la valeur par défaut pour la colonne à laquelle la propriété est mappée lors du ciblage d’une base de données relationnelle.

HasDefaultValueSql(ComplexTypePropertyBuilder)

Configure l’expression de valeur par défaut pour la colonne à laquelle la propriété est mappée lors du ciblage d’une base de données relationnelle.

HasDefaultValueSql(ComplexTypePropertyBuilder, String)

Configure l’expression de valeur par défaut pour la colonne à laquelle la propriété est mappée lors du ciblage d’une base de données relationnelle.

HasJsonPropertyName(ComplexTypePropertyBuilder, String)

Configure la propriété d’une entité mappée à une colonne JSON, en mappant la propriété d’entité à une propriété JSON spécifique, plutôt que d’utiliser le nom de la propriété d’entité.

IsFixedLength(ComplexTypePropertyBuilder, Boolean)

Configure la propriété comme capable de stocker uniquement des données de longueur fixe, telles que des chaînes.

UseCollation(ComplexTypePropertyBuilder, String)

Configure la propriété pour utiliser le classement donné. La colonne de base de données sera créée avec le classement donné et sera utilisée implicitement dans toutes les opérations sensibles au classement.

HasSrid(ComplexTypePropertyBuilder, Int32)

Configure le SRID de la colonne à laquelle la propriété est mappée lors du ciblage de SQLite.

IsSparse(ComplexTypePropertyBuilder, Boolean)

Configure si la colonne de la propriété est créée comme partiellement éparse lors du ciblage de SQL Server.

UseHiLo(ComplexTypePropertyBuilder, String, String)

Configure la propriété key pour utiliser un modèle hi-lo basé sur une séquence pour générer des valeurs pour de nouvelles entités, lors du ciblage de SQL Server. Cette méthode définit la propriété sur OnAdd.

UseIdentityColumn(ComplexTypePropertyBuilder, Int32, Int32)

Configure la propriété key pour utiliser la fonctionnalité SQL Server IDENTITY pour générer des valeurs pour de nouvelles entités, lors du ciblage de SQL Server. Cette méthode définit la propriété sur OnAdd.

UseIdentityColumn(ComplexTypePropertyBuilder, Int64, Int32)

Configure la propriété key pour utiliser la fonctionnalité SQL Server IDENTITY pour générer des valeurs pour de nouvelles entités, lors du ciblage de SQL Server. Cette méthode définit la propriété sur OnAdd.

UseSequence(ComplexTypePropertyBuilder, String, String)

Configure la propriété key pour utiliser un modèle de génération de valeurs de clé basée sur des séquences pour générer des valeurs pour de nouvelles entités, lors du ciblage de SQL Server. Cette méthode définit la propriété sur OnAdd.

S’applique à