Microsoft.EntityFrameworkCore.Metadata Namespace

Classes

AdHocMapper

Creates ad-hoc mappings of CLR types to entity types after the model has been built.

AdHocMapperDependencies

Service dependencies parameter class for AdHocMapper

This type is typically used by database providers (and other extensions). It is generally not used in application code.

CheckConstraintExtensions

Extension methods for ICheckConstraint.

ColumnExtensions

Extension methods for IColumn.

ColumnMappingExtensions

Extension methods for IColumnMapping.

ConfigurationSourceExtensions

Provides extension methods for ConfigurationSource

ConstructorBinding

Defines the binding of parameters to a CLR ConstructorInfo for an entity type.

ContextParameterBinding

Describes the binding of a DbContext, which may or may not also have and associated IServiceProperty, to a parameter in a constructor, factory method, or similar.

DbFunctionExtensions

Extension methods for IDbFunction.

DbFunctionParameterExtensions

Extension methods for IDbFunctionParameter.

DefaultValueBinding

Defines the binding of parameters to create the default value of a type.

DependencyInjectionMethodParameterBinding

Describes the binding from a method on an EF internal dependency injection service, which may or may not also have and associated IServiceProperty, to a parameter in a constructor, factory method, or similar.

DependencyInjectionParameterBinding

Describes the binding from an EF internal dependency injection service, which may or may not also have and associated IServiceProperty, to a parameter in a constructor, factory method, or similar.

EntityTypeFullNameComparer

An implementation of IComparer<T> and IEqualityComparer<T> to compare IReadOnlyEntityType instances by the full unique name.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

EntityTypeParameterBinding

Describes the binding of a IEntityType, which may or may not also have and associated IServiceProperty, to a parameter in a constructor, factory method, or similar.

FactoryMethodBinding

Defines the binding of parameters to a factory method.

ForeignKeyComparer

An implementation of IComparer<T> and IEqualityComparer<T> to compare IReadOnlyForeignKey instances.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

ForeignKeyConstraintExtensions

Extension methods for IForeignKeyConstraint.

FunctionColumnExtensions

Extension methods for IFunctionColumn.

FunctionColumnMappingExtensions

Extension methods for IFunctionColumnMapping.

FunctionMappingExtensions

Extension methods for IFunctionMapping.

IndexComparer

An implementation of IComparer<T> and IEqualityComparer<T> to compare IReadOnlyIndex instances.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

InstantiationBinding

Defines how to create an entity instance through the binding of EF model properties to, for example, constructor parameters or parameters of a factory method.

KeyComparer

An implementation of IComparer<T> and IEqualityComparer<T> to compare IReadOnlyKey instances.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

LazyLoaderParameterBindingFactory

A IParameterBindingFactory for binding to the ILazyLoader service.

LazyLoaderParameterBindingFactoryDependencies

Service dependencies parameter class for LazyLoaderParameterBindingFactory

This type is typically used by database providers (and other extensions). It is generally not used in application code.

ObjectArrayParameterBinding

Describes the binding from many EF model properties, dependency injection services, or metadata types to a new array of objects suitable for passing to a general purpose factory method such as is often used for creating proxies.

ParameterBinding

Describes the binding from one or many EF model properties, dependency injection services, or metadata types to a parameter in a constructor, factory method, or similar.

PropertyParameterBinding

Describes the binding from an IProperty to a parameter in a constructor, factory method, or similar.

RelationalAdHocMapper

Creates ad-hoc mappings of CLR types to entity types after the model has been built.

RelationalAdHocMapperDependencies

Service dependencies parameter class for RelationalAdHocMapper

This type is typically used by database providers (and other extensions). It is generally not used in application code.

RelationalAnnotationNames

Names for well-known relational model annotations. Applications should not use these names directly, but should instead use the extension methods on metadata objects.

RelationalAnnotationProvider

A base class inherited by database providers that gives access to annotations used by relational EF Core components on various elements of the IReadOnlyModel.

RelationalAnnotationProviderDependencies

Service dependencies parameter class for RelationalAnnotationProvider

This type is typically used by database providers (and other extensions). It is generally not used in application code.

RelationalAnnotations

Base class for helpers that can handle setting annotations when used with conventions that may or may not be able to override an annotation that has already been set.

RelationalEntityTypeAnnotations

Properties for relational-specific annotations accessed through Relational(IMutableEntityType).

RelationalForeignKeyAnnotations

Properties for relational-specific annotations accessed through Relational(IMutableForeignKey).

RelationalIndexAnnotations

Properties for relational-specific annotations accessed through Relational(IMutableIndex).

RelationalKeyAnnotations

Properties for relational-specific annotations accessed through Relational(IMutableKey).

RelationalModelAnnotations

Properties for relational-specific annotations accessed through Relational(IMutableModel).

RelationalPropertyAnnotations

Properties for relational-specific annotations accessed through Relational(IMutableProperty).

RelationalPropertyExtensions

Extension methods for IProperty for relational database metadata.

RelationalSequenceBuilder
RuntimeComplexProperty

Represents a complex property of a structural type.

RuntimeComplexType

Represents the type of a complex property of a structural type.

RuntimeDbFunction

Represents a relational database function in a model.

RuntimeDbFunctionParameter

Represents a function parameter.

RuntimeElementType

Represents the elements of a collection property.

RuntimeEntityType

Represents an entity type in a model.

RuntimeEntityTypeMappingFragment

Represents entity type mapping for a particular table-like store object.

RuntimeForeignKey

Represents a relationship where a foreign key composed of properties on the dependent entity type references a corresponding primary or alternate key on the principal entity type.

RuntimeIndex

Represents an index on a set of properties.

RuntimeKey

Represents a primary or alternate key on an entity type.

RuntimeModel

Metadata about the shape of entities, the relationships between them, and how they map to the database. A model is typically created by overriding the OnModelCreating(ModelBuilder) method on a derived DbContext.

RuntimeNavigation

Represents a navigation property which can be used to navigate a relationship.

RuntimeProperty

Represents a scalar property of an structural type.

RuntimePropertyBase

Base type for navigations and properties.

RuntimeRelationalPropertyOverrides

Represents property facet overrides for a particular table-like store object.

RuntimeSequence

Represents a database sequence in the model.

RuntimeServiceProperty

Represents a property on an entity type that represents an injected service from the DbContext.

RuntimeSkipNavigation

Represents a navigation property that is part of a relationship that is forwarded through a third entity type.

RuntimeStoredProcedure

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

RuntimeTrigger

Represents a database trigger on a table.

RuntimeTypeBase

Represents a structural type in a model.

RuntimeTypeMappingConfiguration

Represents scalar type configuration.

ScaffoldingMetadataExtensions
Sequence
SequenceBuilder

A fluent API builder for ISequence objects.

SequenceExtensions

Extension methods for ISequence.

ServiceParameterBinding

Describes the binding from an EF dependency injection service, or metadata type, which may or may not also have and associated IServiceProperty, to a parameter in a constructor, factory method, or similar.

ServiceParameterBindingFactory

A IParameterBindingFactory for binding to dependency-injected services.

SimpleModelFactory

Creates instances of IMutableModel that have no conventions. This is useful when exhaustively configuring a model based on some existing metadata.

This is typically not used in application code since building a model by overriding OnModelCreating(ModelBuilder) or using ModelBuilder directly is much easier.

SqlitePropertyAnnotations

Properties for SQLite-specific annotations accessed through Sqlite(IMutableProperty).

SqlQueryColumnExtensions

Extension methods for ISqlQueryColumn.

SqlQueryColumnMappingExtensions

Extension methods for ISqlQueryColumnMapping.

SqlQueryExtensions

Extension methods for ISqlQuery.

SqlQueryMappingExtensions

Extension methods for ISqlQueryMapping.

SqlServerAnnotationProvider
SqlServerEntityTypeAnnotations

Properties for relational-specific annotations accessed through SqlServer(IMutableEntityType).

SqlServerIndexAnnotations

Properties for relational-specific annotations accessed through SqlServer(IMutableIndex).

SqlServerKeyAnnotations

Properties for relational-specific annotations accessed through SqlServer(IMutableKey).

SqlServerModelAnnotations

Properties for relational-specific annotations accessed through SqlServer(IMutableModel).

SqlServerPropertyAnnotations

Properties for SQL Server-specific annotations accessed through SqlServer(IMutableProperty).

StoreFunctionExtensions

Extension methods for IStoreFunction.

StoreFunctionParameterExtensions

Extension methods for IStoreFunctionParameter.

StoreObjectDictionary<T>

Represents a lookup based on StoreObjectIdentifier keys.

TableExtensions

Extension methods for ITable.

TableIndexExtensions

Extension methods for ITableIndex.

TableMappingExtensions

Extension methods for ITableMapping.

TypeBaseNameComparer

An implementation of IComparer<T> and IEqualityComparer<T> to compare IReadOnlyTypeBase instances by name.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

UniqueConstraintExtensions

Extension methods for IUniqueConstraint.

ViewColumnExtensions

Extension methods for IViewColumn.

ViewColumnMappingExtensions

Extension methods for IViewColumnMapping.

ViewExtensions

Extension methods for IView.

ViewMappingExtensions

Extension methods for IViewMapping.

Structs

MemberIdentity

Represents the identity of an entity type member, can be based on MemberInfo or just the name.

ParameterBindingInfo

Carries information about a parameter binding.

StoreObjectIdentifier

A type that represents the id of a store object

Interfaces

IAdHocMapper

Creates ad-hoc mappings of CLR types to entity types after the model has been built.

ICheckConstraint

Represents a check constraint on the entity type.

IClrCollectionAccessor

Represents operations backed by compiled delegates that allow manipulation of collections on navigation properties.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

IClrPropertyGetter

Represents operations backed by compiled delegates that support getting the value of a mapped EF property.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

IClrPropertySetter

Represents operations backed by compiled delegates that support setting the value of a mapped EF property.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

IColumn

Represents a column in a table.

IColumnBase

Represents a column-like object in a table-like object.

IColumnMapping

Represents property mapping to a column.

IColumnMappingBase

Represents property mapping to a column-like object.

IComplexProperty

Represents a complex property of a structural type.

IComplexType

Represents the type of a complex property of a structural type.

IConstructorBindingFactory

A factory for finding and creating InstantiationBinding instances for a given CLR constructor.

IConventionAnnotatable

A class that exposes annotations that can be modified. Annotations allow for arbitrary metadata to be stored on an object.

This interface is typically used by database providers (and other extensions). It is generally not used in application code.

IConventionAnnotation

An arbitrary piece of metadata that can be stored on an object that implements IConventionAnnotatable.

This interface is typically used by database providers (and other extensions). It is generally not used in application code.

IConventionCheckConstraint

Represents a check constraint on the entity type.

IConventionComplexProperty

Represents a complex property of a structural type.

IConventionComplexType

Represents the type of a complex property of a structural type.

IConventionDbFunction

Represents a relational database function in a model in the form that can be mutated while the model is being built.

IConventionDbFunctionParameter

Represents a function parameter.

IConventionDbFunctionParameterBuilder

Provides a simple API for configuring a IConventionDbFunctionParameter.

IConventionElementType

Represents the elements of a collection property.

IConventionEntityType

Represents an entity type in an IConventionModel.

This interface is used during model creation and allows the metadata to be modified. Once the model is built, IEntityType represents a read-only view of the same metadata.

IConventionEntityTypeMappingFragment

Represents entity type mapping for a particular table-like store object.

IConventionForeignKey

Represents a relationship where a foreign key property(s) in a dependent entity type reference a corresponding primary or alternate key in a principal entity type.

IConventionIndex

Represents an index on a set of properties.

IConventionKey

Represents a primary or alternate key on an entity.

IConventionModel

Metadata about the shape of entities, the relationships between them, and how they map to the database. A model is typically created by overriding the OnModelCreating(ModelBuilder) method on a derived DbContext.

IConventionNavigation

Represents a navigation property which can be used to navigate a relationship.

IConventionNavigationBase

Represents a navigation property which can be used to navigate a relationship.

IConventionProperty

Represents a scalar property of a structural type.

IConventionPropertyBase

Base type for navigation and scalar properties.

IConventionRelationalPropertyOverrides

Represents property facet overrides for a particular table-like store object.

IConventionSequence

Represents a database sequence in the model in a form that can be mutated while building the model.

IConventionServiceProperty

A IReadOnlyPropertyBase in the Entity Framework model that represents an injected service from the DbContext.

IConventionSkipNavigation

Represents a navigation property that is part of a relationship that is forwarded through a third entity type.

IConventionStoredProcedure

Represents a stored procedure in a model in the form that can be mutated while the model is being built.

IConventionStoredProcedureParameter

Represents a stored procedure parameter.

IConventionStoredProcedureResultColumn

Represents a stored procedure result column.

IConventionTrigger

Represents a store trigger.

IConventionTypeBase

Represents a type in an IConventionModel.

IDbFunction

Represents a relational database function in a model.

IDbFunctionParameter

Represents a function parameter.

IDesignTimeModel

The metadata about the shape of entities, the relationships between them, and how they map to the database. Also includes all the information necessary to initialize the database.

IElementType

Represents the elements of a collection property.

IEntityType

Represents an entity type in a model.

IEntityTypeMappingFragment

Represents entity type mapping for a particular table-like store object.

IForeignKey

Represents a relationship where a foreign key composed of properties on the dependent entity type references a corresponding primary or alternate key on the principal entity type.

IForeignKeyConstraint

Represents a foreign key constraint.

IFunctionColumn

Represents a column in a table-valued function.

IFunctionColumnMapping

Represents property mapping to a column.

IFunctionMapping

Represents entity type mapping to a function.

IIndex

Represents an index on a set of properties.

IKey

Represents a primary or alternate key on an entity type.

IMetadataReference<T>

Represents a reference to a metadata object. If the metadata object instance is replaced this will be updated with the new object.

IModel

Metadata about the shape of entities, the relationships between them, and how they map to the database. A model is typically created by overriding the OnModelCreating(ModelBuilder) method on a derived DbContext.

IMutableAnnotatable

A class that exposes annotations that can be modified. Annotations allow for arbitrary metadata to be stored on an object.

This interface is typically used by database providers (and other extensions). It is generally not used in application code.

IMutableCheckConstraint

Represents a check constraint on the entity type.

IMutableComplexProperty

Represents a complex property of a structural type.

IMutableComplexType

Represents the type of a complex property of a structural type.

IMutableDbFunction

Represents a relational database function in an model in the form that can be mutated while the model is being built.

IMutableDbFunctionParameter

Represents a function parameter.

IMutableElementType

Represents the elements of a collection property.

IMutableEntityType

Represents an entity type in an IMutableModel.

IMutableEntityTypeMappingFragment

Represents entity type mapping for a particular table-like store object.

IMutableForeignKey

Represents a relationship where a foreign key property(s) in a dependent entity type reference a corresponding primary or alternate key in a principal entity type.

IMutableIndex

Represents an index on a set of properties.

IMutableKey

Represents a primary or alternate key on an entity.

IMutableModel

Metadata about the shape of entities, the relationships between them, and how they map to the database. A model is typically created by overriding the OnModelCreating(ModelBuilder) method on a derived DbContext.

IMutableNavigation

Represents a navigation property which can be used to navigate a relationship.

IMutableNavigationBase

Represents a navigation property which can be used to navigate a relationship.

IMutableProperty

Represents a scalar property of a structural type.

IMutablePropertyBase

Base type for navigation and scalar properties.

IMutableRelationalPropertyOverrides

Represents property facet overrides for a particular table-like store object.

IMutableSequence

Represents a database sequence in the model.

IMutableServiceProperty

A IReadOnlyPropertyBase in the Entity Framework model that represents an injected service from the DbContext.

IMutableSkipNavigation

Represents a navigation property that is part of a relationship that is forwarded through a third entity type.

IMutableStoredProcedure

Represents a stored procedure in a model in the form that can be mutated while the model is being built.

IMutableStoredProcedureParameter

Represents a stored procedure parameter.

IMutableStoredProcedureResultColumn

Represents a stored procedure result column.

IMutableTrigger

Represents a store trigger.

IMutableTypeBase

Represents a type in an IMutableModel.

INavigation

Represents a navigation property which can be used to navigate a relationship.

INavigationBase

Represents a navigation property which can be used to navigate a relationship.

IParameterBindingFactories

Allows a IParameterBindingFactory to be found from those registered in the internal service provider.

IParameterBindingFactory

Factory for finding and creating ParameterBinding instances.

IPrimaryKeyConstraint

Represents a primary key constraint.

IProperty

Represents a scalar property of a structural type.

IPropertyBase

Base interface for navigations and properties.

IPropertyParameterBindingFactory

Finds a ParameterBinding specifically for some form of property (that is, some IPropertyBase) of the model.

IReadOnlyCheckConstraint

Represents a check constraint on the entity type.

IReadOnlyComplexProperty

Represents a complex property of a structural type.

IReadOnlyComplexType

Represents the type of a complex property of a structural type.

IReadOnlyDbFunction

Represents a relational database function in a model.

IReadOnlyDbFunctionParameter

Represents a function parameter.

IReadOnlyElementType

Represents the elements of a collection property.

IReadOnlyEntityType

Represents an entity type in a model.

IReadOnlyEntityTypeMappingFragment

Represents entity type mapping for a particular table-like store object.

IReadOnlyForeignKey

Represents a relationship where a foreign key composed of properties on the dependent entity type references a corresponding primary or alternate key on the principal entity type.

IReadOnlyIndex

Represents an index on a set of properties.

IReadOnlyKey

Represents a primary or alternate key on an entity type.

IReadOnlyModel

Metadata about the shape of entities, the relationships between them, and how they map to the database. A model is typically created by overriding the OnModelCreating(ModelBuilder) method on a derived DbContext.

IReadOnlyNavigation

Represents a navigation property which can be used to navigate a relationship.

IReadOnlyNavigationBase

Represents a navigation property which can be used to navigate a relationship.

IReadOnlyProperty

Represents a scalar property of a structural type.

IReadOnlyPropertyBase

Base type for navigations and properties.

IReadOnlyRelationalPropertyOverrides

Represents property facet overrides for a particular table-like store object.

IReadOnlySequence

Represents a database sequence in the model.

IReadOnlyServiceProperty

Represents a property on an entity type that represents an injected service from the DbContext.

IReadOnlySkipNavigation

Represents a navigation property that is part of a relationship that is forwarded through a third entity type.

IReadOnlyStoredProcedure

Represents a stored procedure in a model.

IReadOnlyStoredProcedureParameter

Represents a stored procedure parameter.

IReadOnlyStoredProcedureResultColumn

Represents a stored procedure result column.

IReadOnlyStoreObjectDictionary<T>

Represents a lookup based on StoreObjectIdentifier keys.

IReadOnlyTrigger

Represents a store trigger.

IReadOnlyTypeBase

Represents a structural type in the model.

IRelationalAnnotationProvider

A service typically implemented by database providers that gives access to annotations used by relational EF Core components on various elements of the IRelationalModel.

IRelationalEntityTypeAnnotations

Properties for relational-specific annotations accessed through Relational(IEntityType).

IRelationalForeignKeyAnnotations

Properties for relational-specific annotations accessed through Relational(IForeignKey).

IRelationalIndexAnnotations

Properties for relational-specific annotations accessed through Relational(IIndex).

IRelationalKeyAnnotations

Properties for relational-specific annotations accessed through Relational(IKey).

IRelationalModel

Represents a relational database.

IRelationalModelAnnotations

API for relational-specific annotations accessed through Relational(IModel).

IRelationalPropertyAnnotations

Properties for relational-specific annotations accessed through Relational(IProperty).

IRelationalPropertyOverrides

Represents property facet overrides for a particular table-like store object.

ISequence

Represents a database sequence in the model.

IServiceProperty

Represents a property on an entity type that represents an injected service from the DbContext.

ISkipNavigation

Represents a navigation property that is part of a relationship that is forwarded through a third entity type.

ISqlitePropertyAnnotations

API for SQLite-specific annotations accessed through Sqlite(IProperty).

ISqlQuery

Represents a SQL query string.

ISqlQueryColumn

Represents a column in a SQL query.

ISqlQueryColumnMapping

Represents property mapping to a SQL query column.

ISqlQueryMapping

Represents entity type mapping to a SQL query.

ISqlServerEntityTypeAnnotations

Properties for relational-specific annotations accessed through SqlServer(IEntityType).

ISqlServerIndexAnnotations

Properties for relational-specific annotations accessed through SqlServer(IIndex).

ISqlServerKeyAnnotations

Properties for relational-specific annotations accessed through SqlServer(IKey).

ISqlServerModelAnnotations

API for SQL Server-specific annotations accessed through SqlServer(IModel).

ISqlServerPropertyAnnotations

API for SQL Server-specific annotations accessed through SqlServer(IProperty).

IStoredProcedure

Represents a stored procedure in a model.

IStoredProcedureMapping

Represents entity type mapping to a stored procedure.

IStoredProcedureParameter

Represents a stored procedure parameter.

IStoredProcedureParameterMapping

Represents property mapping to a stored procedure parameter.

IStoredProcedureResultColumn

Represents a stored procedure result column.

IStoredProcedureResultColumnMapping

Represents property mapping to a stored procedure result column.

IStoreFunction

Represents a function in the database.

IStoreFunctionParameter

Represents a IStoreFunction parameter.

IStoreStoredProcedure

Represents a stored procedure in a database.

IStoreStoredProcedureParameter

Represents a parameter in a stored procedure.

IStoreStoredProcedureResultColumn

Represents a result column in a stored procedure.

IStoreStoredProcedureReturnValue

Represents the return value of a stored procedure.

ITable

Represents a table in the database.

ITableBase

Represents a table-like object in the database.

ITableIndex

Represents a table index.

ITableMapping

Represents entity type mapping to a table.

ITableMappingBase

Represents type base mapping to a table-like object.

ITrigger

Represents a store trigger.

ITypeBase

Represents a type in the model.

ITypeMappingConfiguration

Represents the configuration for a scalar type.

IUniqueConstraint

Represents a unique constraint.

IView

Represents a view in the database.

IViewColumn

Represents a column in a view.

IViewColumnMapping

Represents property mapping to a column.

IViewMapping

Represents entity type mapping to a view.

Enums

ChangeTrackingStrategy

Indicates how the context detects changes to properties for an instance of the entity type.

ConfigurationSource

Indicates whether an element in the IMutableModel was specified explicitly using the fluent API in OnModelCreating(ModelBuilder), through use of a .NET attribute (data annotation), or by convention via the EF Core model building conventions.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

DeleteBehavior

Indicates how a delete operation is applied to dependent entities in a relationship when the principal is deleted or the relationship is severed.

IdDiscriminatorMode

Defines the behavior for including discriminator values in the JSON "id" value.

PropertyAccessMode

Pass a value from this enum to UsePropertyAccessMode(PropertyAccessMode), UsePropertyAccessMode(PropertyAccessMode), or UsePropertyAccessMode(PropertyAccessMode) to change whether the property or backing field will be used when reading and writing to a property or field.

If no access mode is set, then the backing field for a property will be used if possible when constructing new instances of the entity. The property getter or setter will be used, if possible, for all other accesses of the property. Note that when it is not possible to use the field because it could not be found by convention and was not specified using HasField(String), then the property will be used instead. Likewise, when it is not possible to use the property getter or setter, for example when the property is read-only, then the field will be used instead.

PropertySaveBehavior

Indicates how changes to the value of a property will be handled by Entity Framework change tracking which in turn will determine whether the value set is sent to the database or not. Used with GetBeforeSaveBehavior() and GetAfterSaveBehavior()

SqlServerValueGenerationStrategy

Defines two strategies to use across the EF Core stack when generating key values from SQL Server database columns.

StoreObjectType

The table-like store object type.

ValueGenerated

Indicates when a value for a property will be generated by the database.