Condividi tramite


RelationalTypeMappingSource Classe

Definizione

Classe di base per l'origine di mapping dei tipi relazionali. I provider relazionali devono derivare da questa classe ed eseguire l'override Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingSource.FindMapping(Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingInfo@)

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

public abstract class RelationalTypeMappingSource : Microsoft.EntityFrameworkCore.Storage.TypeMappingSourceBase, Microsoft.EntityFrameworkCore.Storage.IRelationalTypeMappingSource
type RelationalTypeMappingSource = class
    inherit TypeMappingSourceBase
    interface IRelationalTypeMappingSource
    interface ITypeMappingSource
Public MustInherit Class RelationalTypeMappingSource
Inherits TypeMappingSourceBase
Implements IRelationalTypeMappingSource
Ereditarietà
RelationalTypeMappingSource
Implementazioni

Commenti

La durata del servizio è Singleton. Ciò significa che una singola istanza viene usata da molte DbContext istanze. L'implementazione deve essere thread-safe. Questo servizio non può dipendere dai servizi registrati come Scoped.

Per altre informazioni ed esempi, vedere Implementazione di provider di database ed estensioni .

Costruttori

RelationalTypeMappingSource(TypeMappingSourceDependencies, RelationalTypeMappingSourceDependencies)

Inizializza una nuova istanza della classe.

Proprietà

Dependencies

Dipendenze per questo servizio.

(Ereditato da TypeMappingSourceBase)
RelationalDependencies

Dipendenze specifiche del provider relazionale per questo servizio.

Metodi

FindCollectionMapping(RelationalTypeMappingInfo, Type, Type, CoreTypeMapping)

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.

FindMapping(IElementType)

Trova il mapping dei tipi per l'oggetto specificato IElementType.

FindMapping(IElementType)

Trova il mapping dei tipi per un determinato IElementTypeoggetto .

(Ereditato da TypeMappingSourceBase)
FindMapping(IProperty)

Trova il mapping dei tipi per un determinato IPropertyoggetto .

FindMapping(MemberInfo)

Trova il mapping dei tipi per un dato MemberInfo oggetto che rappresenta un campo o una proprietà di un tipo CLR.

FindMapping(RelationalTypeMappingInfo)

Sottoposto a override dai provider di database relazionali per trovare un mapping dei tipi per le informazioni fornite.

FindMapping(String)

Trova il mapping dei tipi per un determinato nome di tipo di database.

FindMapping(Type)

Trova il mapping dei tipi per un determinato Typeoggetto .

FindMapping(Type, IModel)

Trova il mapping dei tipi per un determinato Typeoggetto , prendendo la configurazione della pre-convenzione nell'account.

FindMapping(Type, IModel)

Trova il mapping dei tipi per un determinato Typeoggetto , prendendo la configurazione della pre-convenzione nell'account.

(Ereditato da TypeMappingSourceBase)
FindMapping(Type, IModel, CoreTypeMapping)

Trova il mapping dei tipi per un determinato Typeoggetto , prendendo la configurazione della pre-convenzione nell'account.

FindMapping(Type, IModel, CoreTypeMapping)

Trova il mapping dei tipi per un determinato Typeoggetto , prendendo la configurazione della pre-convenzione nell'account.

(Ereditato da TypeMappingSourceBase)
FindMapping(Type, String, Boolean, Nullable<Boolean>, Nullable<Int32>, Nullable<Boolean>, Nullable<Boolean>, Nullable<Int32>, Nullable<Int32>)

Trova il mapping dei tipi per i Type facet specificati e aggiuntivi.

FindMapping(TypeMappingInfo)

Chiamare Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingSource.FindMapping(Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingInfo@) invece

FindMappingWithConversion(RelationalTypeMappingInfo, IReadOnlyList<IProperty>)

Questa API supporta l'infrastruttura Entity Framework Core e non deve essere usata direttamente dal codice. Questa API può cambiare o essere rimossa nelle versioni future.

ParseStoreTypeName(String, Nullable<Boolean>, Nullable<Int32>, Nullable<Int32>, Nullable<Int32>)

Analizza un nome di tipo di archivio specifico del provider, estraendo i facet standard (ad esempio dimensioni, precisione) e restituisce il nome del tipo di archivio di base (senza facet).

TryFindJsonCollectionMapping(TypeMappingInfo, Type, Type, CoreTypeMapping, ValueComparer, JsonValueReaderWriter)

Tenta di trovare un mapping dei tipi basato su JSON per una raccolta di tipi primitivi.

(Ereditato da TypeMappingSourceBase)
ValidateMapping(CoreTypeMapping, IProperty)

Chiamato dopo che è stato trovato un mapping in modo che possa essere convalidato per la proprietà specificata.

(Ereditato da TypeMappingSourceBase)

Implementazioni dell'interfaccia esplicita

IRelationalTypeMappingSource.FindMapping(IProperty)

Trova il mapping dei tipi per un determinato IPropertyoggetto .

IRelationalTypeMappingSource.FindMapping(MemberInfo)

Trova il mapping dei tipi per un dato MemberInfo oggetto che rappresenta un campo o una proprietà di un tipo CLR.

IRelationalTypeMappingSource.FindMapping(Type)

Trova il mapping dei tipi per un determinato Typeoggetto .

IRelationalTypeMappingSource.FindMapping(Type, IModel)

Trova il mapping dei tipi per un determinato Typeoggetto , prendendo la configurazione della pre-convenzione nell'account.

Metodi di estensione

GetMapping(IRelationalTypeMappingSource, IProperty)

Ottiene il tipo di database relazionale per una determinata proprietà, che genera se non viene trovato alcun mapping.

GetMapping(IRelationalTypeMappingSource, String)

Ottiene il mapping che rappresenta il tipo di database specificato, che genera se non viene trovato alcun mapping.

GetMapping(IRelationalTypeMappingSource, Type)

Ottiene il tipo di database relazionale per un determinato tipo .NET, che genera se non viene trovato alcun mapping.

GetMapping(IRelationalTypeMappingSource, Type, IModel)

Ottiene il tipo di database relazionale per un determinato tipo .NET, che genera se non viene trovato alcun mapping.

GetMappingForValue(IRelationalTypeMappingSource, Object)

Ottiene il tipo di database relazionale per un oggetto specificato, che genera un'eccezione se non viene trovato alcun mapping.

GetMappingForValue(IRelationalTypeMappingSource, Object, IModel)

Ottiene il tipo di database relazionale per un oggetto specificato, che genera un'eccezione se non viene trovato alcun mapping.

Si applica a