ComplexTypePropertyBuilder Classe

Definizione

Fornisce un'API semplice per la configurazione di un oggetto 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)
Ereditarietà
ComplexTypePropertyBuilder
Derivato
Implementazioni

Commenti

Le istanze di questa classe vengono restituite dai metodi quando si usa l'API ModelBuilder e non è progettato per essere costruito direttamente nel codice dell'applicazione.

Per altre informazioni ed esempi, vedere Modellazione di tipi complessi e relazioni .

Costruttori

ComplexTypePropertyBuilder(IMutableProperty)

Si tratta di un'API interna che supporta l'infrastruttura Entity Framework Core e non è soggetta agli stessi standard di compatibilità delle API pubbliche. Può essere modificato o rimosso senza preavviso in alcuna versione. È consigliabile usarlo direttamente nel codice con estrema cautela e sapere che questa operazione può causare errori dell'applicazione durante l'aggiornamento a una nuova versione di Entity Framework Core.

Proprietà

Metadata

Proprietà configurata.

Metodi

HasAnnotation(String, Object)

Aggiunge o aggiorna un'annotazione nella proprietà . Se esiste già un'annotazione con la chiave specificata in annotation , verrà aggiornato il relativo valore.

HasConversion(Type)

Configura la proprietà in modo che il valore della proprietà venga convertito prima di scrivere nel database e riconvertito durante la lettura dal database.

HasConversion(Type, Type)

Configura la proprietà in modo che il valore della proprietà venga convertito prima di scrivere nel database e riconvertito durante la lettura dal database.

HasConversion(Type, Type, Type)

Configura la proprietà in modo che il valore della proprietà venga convertito prima di scrivere nel database e riconvertito durante la lettura dal database.

HasConversion(Type, ValueComparer)

Configura la proprietà in modo che il valore della proprietà venga convertito prima di scrivere nel database e riconvertito durante la lettura dal database.

HasConversion(Type, ValueComparer, ValueComparer)

Configura la proprietà in modo che il valore della proprietà venga convertito prima di scrivere nel database e riconvertito durante la lettura dal database.

HasConversion(ValueConverter)

Configura la proprietà in modo che il valore della proprietà venga convertito in e dal database utilizzando l'oggetto specificato ValueConverter.

HasConversion(ValueConverter, ValueComparer)

Configura la proprietà in modo che il valore della proprietà venga convertito in e dal database utilizzando l'oggetto specificato ValueConverter.

HasConversion(ValueConverter, ValueComparer, ValueComparer)

Configura la proprietà in modo che il valore della proprietà venga convertito in e dal database utilizzando l'oggetto specificato ValueConverter.

HasConversion<TConversion,TComparer,TProviderComparer>()

Configura la proprietà in modo che il valore della proprietà venga convertito prima di scrivere nel database e riconvertito durante la lettura dal database.

HasConversion<TConversion,TComparer>()

Configura la proprietà in modo che il valore della proprietà venga convertito prima di scrivere nel database e riconvertito durante la lettura dal database.

HasConversion<TConversion>()

Configura la proprietà in modo che il valore della proprietà venga convertito prima di scrivere nel database e riconvertito durante la lettura dal database.

HasConversion<TConversion>(ValueComparer)

Configura la proprietà in modo che il valore della proprietà venga convertito prima di scrivere nel database e riconvertito durante la lettura dal database.

HasConversion<TConversion>(ValueComparer, ValueComparer)

Configura la proprietà in modo che il valore della proprietà venga convertito prima di scrivere nel database e riconvertito durante la lettura dal database.

HasField(String)

Imposta il campo sottostante da utilizzare per questa proprietà.

HasMaxLength(Int32)

Configura la lunghezza massima dei dati che è possibile archiviare in questa proprietà. La lunghezza massima può essere impostata solo sulle proprietà della matrice (incluse String le proprietà).

HasPrecision(Int32)

Configura la precisione della proprietà.

HasPrecision(Int32, Int32)

Configura la precisione e la scala della proprietà.

HasSentinel(Object)

Configura il valore che verrà utilizzato per determinare se la proprietà è stata impostata o meno. Se la proprietà è impostata sul valore sentinel, viene considerata non impostata. Per impostazione predefinita, il valore sentinel è il valore predefinito CLR per il tipo della proprietà.

HasValueGenerator(Type)

Configura l'oggetto ValueGenerator che genererà i valori per questa proprietà.

HasValueGenerator<TGenerator>()

Configura l'oggetto ValueGenerator che genererà i valori per questa proprietà.

HasValueGeneratorFactory(Type)

Configura per ValueGeneratorFactory la creazione di un ValueGenerator oggetto da utilizzare per generare valori per questa proprietà.

HasValueGeneratorFactory<TFactory>()

Configura per ValueGeneratorFactory la creazione di un ValueGenerator oggetto da utilizzare per generare valori per questa proprietà.

IsConcurrencyToken(Boolean)

Configura se questa proprietà deve essere usata come token di concorrenza. Quando una proprietà viene configurata come token di concorrenza, il valore nel database verrà controllato quando un'istanza di questo tipo complesso viene aggiornata o eliminata durante SaveChanges() per assicurarsi che non sia stata modificata dopo che l'istanza è stata recuperata dal database. Se è stata modificata, verrà generata un'eccezione e le modifiche non verranno applicate al database.

IsRequired(Boolean)

Configura se questa proprietà deve avere un valore assegnato o null è un valore valido. Una proprietà può essere configurata come non obbligatoria solo se è basata su un tipo CLR a cui è possibile assegnare null.

IsRowVersion()

Configura la proprietà come ValueGeneratedOnAddOrUpdate() e IsConcurrencyToken(Boolean).

IsUnicode(Boolean)

Configura se la proprietà è in grado di rendere persistenti i caratteri Unicode. Può essere impostato solo sulle String proprietà.

UsePropertyAccessMode(PropertyAccessMode)

Imposta l'oggetto PropertyAccessMode da utilizzare per questa proprietà.

ValueGeneratedNever()

Configura una proprietà in modo che non abbia mai un valore generato dal database quando viene salvata un'istanza di questo tipo complesso.

ValueGeneratedOnAdd()

Configura una proprietà in modo che venga generato un valore solo quando si salva una nuova entità, a meno che non sia stato impostato un valore non null, non temporaneo, nel qual caso il valore impostato verrà salvato. Il valore può essere generato da un generatore di valori lato client o può essere generato dal database come parte del salvataggio dell'entità.

ValueGeneratedOnAddOrUpdate()

Configura una proprietà per la generazione di un valore durante il salvataggio di un'entità nuova o esistente.

ValueGeneratedOnUpdate()

Configura una proprietà per la generazione di un valore durante il salvataggio di un'entità esistente.

ValueGeneratedOnUpdateSometimes()

Configura una proprietà in modo che un valore generato in determinate condizioni durante il salvataggio di un'entità esistente.

Implementazioni dell'interfaccia esplicita

IInfrastructure<IConventionPropertyBuilder>.Instance

Generatore interno utilizzato per configurare la proprietà.

Metodi di estensione

GetInfrastructure<T>(IInfrastructure<T>)

Ottiene il valore da una proprietà nascosta tramite IInfrastructure<T>.

Questo metodo viene in genere usato dai provider di database (e da altre estensioni). In genere non viene usato nel codice dell'applicazione.

HasColumnName(ComplexTypePropertyBuilder, String)

Configura la colonna a cui viene eseguito il mapping della proprietà durante la destinazione di un database relazionale.

HasColumnOrder(ComplexTypePropertyBuilder, Nullable<Int32>)

Configura l'ordine della colonna a cui viene mappata la proprietà.

HasColumnType(ComplexTypePropertyBuilder, String)

Configura il tipo di dati della colonna a cui viene eseguito il mapping della proprietà durante la destinazione di un database relazionale. Deve trattarsi del nome completo del tipo, tra cui precisione, scala, lunghezza e così via.

HasComment(ComplexTypePropertyBuilder, String)

Configura un commento da applicare alla colonna

HasComputedColumnSql(ComplexTypePropertyBuilder)

Configura la proprietà per il mapping a una colonna calcolata quando è destinata a un database relazionale.

HasComputedColumnSql(ComplexTypePropertyBuilder, String)

Configura la proprietà per il mapping a una colonna calcolata quando è destinata a un database relazionale.

HasComputedColumnSql(ComplexTypePropertyBuilder, String, Nullable<Boolean>)

Configura la proprietà per il mapping a una colonna calcolata quando è destinata a un database relazionale.

HasDefaultValue(ComplexTypePropertyBuilder)

Configura il valore predefinito per la colonna a cui viene eseguito il mapping della proprietà durante la destinazione di un database relazionale.

HasDefaultValue(ComplexTypePropertyBuilder, Object)

Configura il valore predefinito per la colonna a cui viene eseguito il mapping della proprietà durante la destinazione di un database relazionale.

HasDefaultValueSql(ComplexTypePropertyBuilder)

Configura l'espressione di valore predefinita per la colonna a cui viene eseguito il mapping della proprietà durante la destinazione di un database relazionale.

HasDefaultValueSql(ComplexTypePropertyBuilder, String)

Configura l'espressione di valore predefinita per la colonna a cui viene eseguito il mapping della proprietà durante la destinazione di un database relazionale.

HasJsonPropertyName(ComplexTypePropertyBuilder, String)

Configura la proprietà di un'entità mappata a una colonna JSON, eseguendo il mapping della proprietà dell'entità a una proprietà JSON specifica anziché usando il nome della proprietà dell'entità.

IsFixedLength(ComplexTypePropertyBuilder, Boolean)

Configura la proprietà in grado di archiviare solo dati a lunghezza fissa, ad esempio stringhe.

UseCollation(ComplexTypePropertyBuilder, String)

Configura la proprietà per l'uso delle regole di confronto specificate. La colonna di database verrà creata con le regole di confronto specificate e verrà usata in modo implicito in tutte le operazioni sensibili alle regole di confronto.

HasSrid(ComplexTypePropertyBuilder, Int32)

Configura l'identificatore SRID della colonna a cui viene eseguito il mapping della proprietà durante la destinazione SQLite.

IsSparse(ComplexTypePropertyBuilder, Boolean)

Configura se la colonna della proprietà viene creata come sparse quando la destinazione è SQL Server.

UseHiLo(ComplexTypePropertyBuilder, String, String)

Configura la proprietà chiave per l'uso di un modello hi-lo basato su sequenza per generare valori per le nuove entità, quando la destinazione è SQL Server. Questo metodo imposta la proprietà su OnAdd.

UseIdentityColumn(ComplexTypePropertyBuilder, Int32, Int32)

Configura la proprietà chiave per l'uso della funzionalità IDENTITY SQL Server per generare valori per le nuove entità, quando la destinazione è SQL Server. Questo metodo imposta la proprietà su OnAdd.

UseIdentityColumn(ComplexTypePropertyBuilder, Int64, Int32)

Configura la proprietà chiave per l'uso della funzionalità IDENTITY SQL Server per generare valori per le nuove entità, quando la destinazione è SQL Server. Questo metodo imposta la proprietà su OnAdd.

UseSequence(ComplexTypePropertyBuilder, String, String)

Configura la proprietà chiave per l'uso di un modello di generazione di valori chiave basato su sequenza per generare valori per le nuove entità, quando la destinazione è SQL Server. Questo metodo imposta la proprietà su OnAdd.

Si applica a