Namespace Microsoft.EntityFrameworkCore.Storage
Classes
- BoolTypeMapping
Represents the mapping between a .NET bool type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- ByteArrayTypeMapping
Represents the mapping between a .NET byte array type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- ByteTypeMapping
Represents the mapping between a .NET byte type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- CharTypeMapping
Represents the mapping between a .NET char type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- DateTimeOffsetTypeMapping
Represents the mapping between a .NET DateTimeOffset type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- DateTimeTypeMapping
Represents the mapping between a .NET DateTime type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- DbContextTransactionExtensions
Extension methods for Microsoft.EntityFrameworkCore.Storage.IDbContextTransaction.
- DecimalTypeMapping
Represents the mapping between a .NET decimal type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- DoubleTypeMapping
Represents the mapping between a .NET double type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- FloatTypeMapping
Represents the mapping between a .NET float type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- GuidTypeMapping
Represents the mapping between a .NET Guid type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- IntTypeMapping
Represents the mapping between a .NET int type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- LongTypeMapping
Represents the mapping between a .NET long type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- ParameterNameGenerator
Generates unique names for parameters.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- ParameterNameGeneratorDependencies
Service dependencies parameter class for ParameterNameGeneratorFactory
This type is typically used by database providers (and other extensions). It is generally not used in application code.
Do not construct instances of this class directly from either provider or application code as the constructor signature may change as new dependencies are added. Instead, use this type in your constructor so that an instance will be created and injected automatically by the dependency injection container. To create an instance with some dependent services replaced, first resolve the object from the dependency injection container, then replace selected services using the 'With...' methods. Do not call the constructor at any point in this process.
The service lifetime is Singleton. This means a single instance of each service is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- ParameterNameGeneratorFactory
Creates instances of the ParameterNameGenerator type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- RawSqlCommand
Represents a raw SQL command to be executed against a relational database.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- ReaderColumn
An expected column in the relational data reader.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- ReaderColumn<T>
An expected column in the relational data reader.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- RelationalCommand
A command to be executed against a relational database.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- RelationalCommandBuilder
Builds a command to be executed against a relational database.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- RelationalCommandBuilderDependencies
Service dependencies parameter class for RelationalCommandBuilder
This type is typically used by database providers (and other extensions). It is generally not used in application code.
Do not construct instances of this class directly from either provider or application code as the constructor signature may change as new dependencies are added. Instead, use this type in your constructor so that an instance will be created and injected automatically by the dependency injection container. To create an instance with some dependent services replaced, first resolve the object from the dependency injection container, then replace selected services using the 'With...' methods. Do not call the constructor at any point in this process.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- RelationalCommandBuilderExtensions
Extension methods for the IRelationalCommandBuilder class.
- RelationalCommandBuilderFactory
Factory for RelationalCommandBuilder instances.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- RelationalConnection
Represents a connection with a relational database.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- RelationalConnectionDependencies
Service dependencies parameter class for RelationalConnection
This type is typically used by database providers (and other extensions). It is generally not used in application code.
Do not construct instances of this class directly from either provider or application code as the constructor signature may change as new dependencies are added. Instead, use this type in your constructor so that an instance will be created and injected automatically by the dependency injection container. To create an instance with some dependent services replaced, first resolve the object from the dependency injection container, then replace selected services using the 'With...' methods. Do not call the constructor at any point in this process.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- RelationalDataReader
Reads result sets from a relational database.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- RelationalDatabase
The main interaction point between a context and the database provider.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- RelationalDatabaseCreator
Performs database/schema creation, and other related operations.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- RelationalDatabaseCreatorDependencies
Service dependencies parameter class for RelationalDatabaseCreator
This type is typically used by database providers (and other extensions). It is generally not used in application code.
Do not construct instances of this class directly from either provider or application code as the constructor signature may change as new dependencies are added. Instead, use this type in your constructor so that an instance will be created and injected automatically by the dependency injection container. To create an instance with some dependent services replaced, first resolve the object from the dependency injection container, then replace selected services using the 'With...' methods. Do not call the constructor at any point in this process.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- RelationalDatabaseDependencies
Service dependencies parameter class for RelationalDatabase
This type is typically used by database providers (and other extensions). It is generally not used in application code.
Do not construct instances of this class directly from either provider or application code as the constructor signature may change as new dependencies are added. Instead, use this type in your constructor so that an instance will be created and injected automatically by the dependency injection container. To create an instance with some dependent services replaced, first resolve the object from the dependency injection container, then replace selected services using the 'With...' methods. Do not call the constructor at any point in this process.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- RelationalExecutionStrategyExtensions
Extension methods for Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy that can only be used with a relational database provider.
- RelationalExecutionStrategyFactory
Factory for creating Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy instances for use with relational database providers.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- RelationalGeometryTypeMapping<TGeometry, TProvider>
Base class for relation type mappings to NTS Geometry and derived types.
- RelationalSqlGenerationHelper
Provides services to help with generation of SQL commands.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- RelationalSqlGenerationHelperDependencies
Service dependencies parameter class for RelationalSqlGenerationHelper
This type is typically used by database providers (and other extensions). It is generally not used in application code.
Do not construct instances of this class directly from either provider or application code as the constructor signature may change as new dependencies are added. Instead, use this type in your constructor so that an instance will be created and injected automatically by the dependency injection container. To create an instance with some dependent services replaced, first resolve the object from the dependency injection container, then replace selected services using the 'With...' methods. Do not call the constructor at any point in this process.
The service lifetime is Singleton. This means a single instance of each service is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- RelationalTransaction
A transaction against the database.
Instances of this class are typically obtained from Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade.BeginTransaction and it is not designed to be directly constructed in your application code.
- RelationalTransactionFactory
A factory for creating RelationalTransaction instances.
This type is typically used by database providers It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- RelationalTransactionFactoryDependencies
Service dependencies parameter class for RelationalTransactionFactory.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
Do not construct instances of this class directly from either provider or application code as the constructor signature may change as new dependencies are added. Instead, use this type in your constructor so that an instance will be created and injected automatically by the dependency injection container. To create an instance with some dependent services replaced, first resolve the object from the dependency injection container, then replace selected services using the 'With...' methods. Do not call the constructor at any point in this process.
The service lifetime is Singleton. This means a single instance of each service is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- RelationalTypeMapping
Represents the mapping between a .NET type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- RelationalTypeMappingSource
The base class for relational type mapping starting with version 2.1. Relational providers should derive from this class and override FindMapping(in RelationalTypeMappingInfo)
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- RelationalTypeMappingSourceDependencies
Service dependencies parameter class for RelationalTypeMappingSource
This type is typically used by database providers (and other extensions). It is generally not used in application code.
Do not construct instances of this class directly from either provider or application code as the constructor signature may change as new dependencies are added. Instead, use this type in your constructor so that an instance will be created and injected automatically by the dependency injection container. To create an instance with some dependent services replaced, first resolve the object from the dependency injection container, then replace selected services using the 'With...' methods. Do not call the constructor at any point in this process.
The service lifetime is Singleton. This means a single instance of each service is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- RelationalTypeMappingSourceExtensions
Extension methods for the IRelationalTypeMappingSource class.
- RelationalValueBufferFactoryDependencies
Service dependencies parameter class for TypedRelationalValueBufferFactory.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
Do not construct instances of this class directly from either provider or application code as the constructor signature may change as new dependencies are added. Instead, use this type in your constructor so that an instance will be created and injected automatically by the dependency injection container. To create an instance with some dependent services replaced, first resolve the object from the dependency injection container, then replace selected services using the 'With...' methods. Do not call the constructor at any point in this process.
The service lifetime is Singleton. This means a single instance of each service is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- SByteTypeMapping
Represents the mapping between a .NET sbyte type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- ShortTypeMapping
Represents the mapping between a .NET short type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- StringTypeMapping
Represents the mapping between a .NET string type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- TimeSpanTypeMapping
Represents the mapping between a .NET TimeSpan type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- TypeMaterializationInfo
Associates a RelationalTypeMapping with an optional Microsoft.EntityFrameworkCore.Metadata.IProperty and an index into the data reader for use when reading and converting values from the database.
- TypedRelationalValueBufferFactoryFactory
Creates instances of the IRelationalValueBufferFactory type. IRelationalValueBufferFactory instances are tied to a specific result shape. This factory is responsible for creating the IRelationalValueBufferFactory for a given result shape.
This factory results in value buffers that use they strongly typed APIs to read back individual values from the underlying DbDataReader.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- UIntTypeMapping
Represents the mapping between a .NET uint type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- ULongTypeMapping
Represents the mapping between a .NET ulong type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- UShortTypeMapping
Represents the mapping between a .NET ushort type and a database type.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
Structs
- RelationalCommandParameterObject
A parameter object for the execution methods on RelationalCommand.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- RelationalTypeMapping.RelationalTypeMappingParameters
Parameter object for use in the RelationalTypeMapping hierarchy.
- RelationalTypeMappingInfo
Describes metadata needed to decide on a relational type mapping for a property, type, or provider-specific relational type name.
Interfaces
- IParameterNameGeneratorFactory
Creates instances of ParameterNameGenerator.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- IRawSqlCommandBuilder
Creates commands based on raw SQL command text.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- IRelationalCommand
A command to be executed against a relational database.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- IRelationalCommandBuilder
Builds a command to be executed against a relational database.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- IRelationalCommandBuilderFactory
Creates instances of the IRelationalCommandBuilder class.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- IRelationalConnection
Represents a connection with a relational database.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- IRelationalDatabaseCreator
Performs database/schema creation, and other related operations.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- IRelationalDatabaseFacadeDependencies
Exposes dependencies needed by Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade and its relational extension methods.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- IRelationalParameter
A parameter in an IRelationalCommand. Note that this interface just represents a placeholder for a parameter and not the actual value. This is because the same command can be reused multiple times with different parameter values.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- IRelationalTransactionFactory
A factory for creating RelationalTransaction instances.
This type is typically used by database providers It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- IRelationalTransactionManager
Creates and manages the current transaction for a relational database.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
- IRelationalTypeMappingSource
The relational type mapping interface for EF Core, starting with version 2.1. Type mappings describe how a provider maps CLR types/values to database types/values.
Warning: do not implement this interface directly. Instead, derive from RelationalTypeMappingSource.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- IRelationalTypeMappingSourcePlugin
Represents a plugin relational type mapping source.
The service lifetime is Singleton and multiple registrations are allowed. This means a single instance of each service is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- IRelationalValueBufferFactory
Creates instances of the Microsoft.EntityFrameworkCore.Storage.ValueBuffer type. An IRelationalValueBufferFactory is tied to a particular result shape and will only create value buffers for that result shape. Instances for different result shapes are created by IRelationalValueBufferFactoryFactory.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
- IRelationalValueBufferFactoryFactory
Creates instances of the IRelationalValueBufferFactory type. IRelationalValueBufferFactory instances are tied to a specific result shape. This factory is responsible for creating the IRelationalValueBufferFactory for a given result shape.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
- ISqlGenerationHelper
Provides services to help with generation of SQL commands.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
Enums
- StoreTypePostfix
Indicates which values should be appended to the store type name.