Table of Contents

Namespace Microsoft.EntityFrameworkCore.Metadata

Classes

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.

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.

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 Microsoft.EntityFrameworkCore.Infrastructure.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.

RuntimeComplexProperty

Represents a complex property of a structural type.

RuntimeComplexType

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

RuntimeElementType

Represents the elements of a collection property.

RuntimeEntityType

Represents an entity type in a model.

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.

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.

RuntimeTrigger

Represents a database trigger on a table.

RuntimeTypeBase

Represents a structural type in a model.

RuntimeTypeMappingConfiguration

Represents scalar type configuration.

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.

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.

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.

Interfaces

IAdHocMapper

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

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.

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.

IConventionComplexProperty

Represents a complex property of a structural type.

IConventionComplexType

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

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.

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.

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.

IConventionTrigger

Represents a store trigger.

IConventionTypeBase

Represents a type in an IConventionModel.

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.

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.

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.

IMutableComplexProperty

Represents a complex property of a structural type.

IMutableComplexType

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

IMutableElementType

Represents the elements of a collection property.

IMutableEntityType

Represents an entity type in an IMutableModel.

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.

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.

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.

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.

IReadOnlyComplexProperty

Represents a complex property of a structural type.

IReadOnlyComplexType

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

IReadOnlyElementType

Represents the elements of a collection property.

IReadOnlyEntityType

Represents an entity type in a model.

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.

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.

IReadOnlyTrigger

Represents a store trigger.

IReadOnlyTypeBase

Represents a structural type 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.

ITrigger

Represents a store trigger.

ITypeBase

Represents a type in the model.

ITypeMappingConfiguration

Represents the configuration for a scalar type.

Enums

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.

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()

ValueGenerated

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