Share via


ModelSourceDependencies Class

Definition

Service dependencies parameter class for ModelSource

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

public sealed class ModelSourceDependencies
public sealed class ModelSourceDependencies : IEquatable<Microsoft.EntityFrameworkCore.Infrastructure.ModelSourceDependencies>
type ModelSourceDependencies = class
type ModelSourceDependencies = class
    interface IEquatable<ModelSourceDependencies>
Public NotInheritable Class ModelSourceDependencies
Public NotInheritable Class ModelSourceDependencies
Implements IEquatable(Of ModelSourceDependencies)
Inheritance
ModelSourceDependencies
Implements

Remarks

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 C# 'with' operator. 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 DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.

Constructors

ModelSourceDependencies(ICoreConventionSetBuilder, IModelCustomizer, IModelCacheKeyFactory)

Creates the service dependencies parameter object for a ModelSource.

This API supports the Entity Framework Core infrastructure and is not intended to be used directly from your code. This API may change or be removed in future releases.

Do not call this constructor directly from either provider or application code as it 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.

ModelSourceDependencies(IModelCustomizer, IModelCacheKeyFactory, IMemoryCache)

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.

ModelSourceDependencies(IModelCustomizer, IModelCacheKeyFactory)

Creates the service dependencies parameter object for a ModelSource.

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.

Do not call this constructor directly from either provider or application code as it 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.

Properties

CoreConventionSetBuilder

Gets the Microsoft.EntityFrameworkCore.Metadata.Conventions.Internal.ICoreConventionSetBuilder that will build the conventions to be used to build the model.

MemoryCache

Gets the IMemoryCache that will be used to cache models.

ModelCacheKeyFactory

Gets the IModelCacheKeyFactory that will create keys used to store and lookup models the model cache.

ModelCustomizer

Gets the IModelCustomizer that will perform additional configuration of the model in addition to what is discovered by convention.

Methods

<Clone>$()
Equals(ModelSourceDependencies)
Equals(Object)
GetHashCode()
ToString()
With(ICoreConventionSetBuilder)

Clones this dependency parameter object with one service replaced.

With(IMemoryCache)

Clones this dependency parameter object with one service replaced.

With(IModelCacheKeyFactory)

Clones this dependency parameter object with one service replaced.

With(IModelCustomizer)

Clones this dependency parameter object with one service replaced.

Operators

Equality(ModelSourceDependencies, ModelSourceDependencies)
Inequality(ModelSourceDependencies, ModelSourceDependencies)

Applies to