Class ProviderConventionSetBuilderDependencies
- Assembly
- Microsoft.EntityFrameworkCore.dll
Service dependencies parameter class for ProviderConventionSetBuilder
This type is typically used by database providers (and other extensions). It is generally not used in application code.
public sealed record ProviderConventionSetBuilderDependencies : IEquatable<ProviderConventionSetBuilderDependencies>
- Inheritance
-
ProviderConventionSetBuilderDependencies
- Implements
- Inherited Members
Remarks
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 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 Scoped. This means that each 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.
Constructors
ProviderConventionSetBuilderDependencies(ITypeMappingSource, IConstructorBindingFactory, IParameterBindingFactories, IMemberClassifier, IDiagnosticsLogger<Model>, IDiagnosticsLogger<Validation>, IDbSetFinder, ICurrentDbContext)
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.
[EntityFrameworkInternal]
public ProviderConventionSetBuilderDependencies(ITypeMappingSource typeMappingSource, IConstructorBindingFactory constructorBindingFactory, IParameterBindingFactories parameterBindingFactories, IMemberClassifier memberClassifier, IDiagnosticsLogger<DbLoggerCategory.Model> logger, IDiagnosticsLogger<DbLoggerCategory.Model.Validation> validationLogger, IDbSetFinder setFinder, ICurrentDbContext currentContext)
Parameters
typeMappingSource
ITypeMappingSourceconstructorBindingFactory
IConstructorBindingFactoryparameterBindingFactories
IParameterBindingFactoriesmemberClassifier
IMemberClassifierlogger
IDiagnosticsLogger<DbLoggerCategory.Model>validationLogger
IDiagnosticsLogger<DbLoggerCategory.Model.Validation>setFinder
IDbSetFindercurrentContext
ICurrentDbContext
Remarks
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 C# 'with' operator. Do not call the constructor at any point in this process.
Properties
ConstructorBindingFactory
The constructor binding factory.
public IConstructorBindingFactory ConstructorBindingFactory { get; init; }
Property Value
ContextType
The current context instance.
public Type ContextType { get; }
Property Value
Logger
The model logger.
public IDiagnosticsLogger<DbLoggerCategory.Model> Logger { get; init; }
Property Value
MemberClassifier
The member classifier.
[EntityFrameworkInternal]
public IMemberClassifier MemberClassifier { get; init; }
Property Value
ParameterBindingFactories
The parameter binding factories.
public IParameterBindingFactories ParameterBindingFactories { get; init; }
Property Value
SetFinder
The set finder.
public IDbSetFinder SetFinder { get; init; }
Property Value
TypeMappingSource
The type mapping source.
public ITypeMappingSource TypeMappingSource { get; init; }
Property Value
ValidationLogger
The model validation logger.
public IDiagnosticsLogger<DbLoggerCategory.Model.Validation> ValidationLogger { get; init; }
Property Value
Methods
Equals(ProviderConventionSetBuilderDependencies?)
public bool Equals(ProviderConventionSetBuilderDependencies? other)
Parameters
Returns
Equals(object?)
public override bool Equals(object? obj)
Parameters
obj
object
Returns
GetHashCode()
public override int GetHashCode()
Returns
ToString()
public override string ToString()
Returns
With(ICurrentDbContext)
Clones this dependency parameter object with one service replaced.
public ProviderConventionSetBuilderDependencies With(ICurrentDbContext currentContext)
Parameters
currentContext
ICurrentDbContextA replacement for the current dependency of this type.
Returns
- ProviderConventionSetBuilderDependencies
A new parameter object with the given service replaced.
<Clone>$()
public ProviderConventionSetBuilderDependencies <Clone>$()
Returns
Operators
operator ==(ProviderConventionSetBuilderDependencies?, ProviderConventionSetBuilderDependencies?)
public static bool operator ==(ProviderConventionSetBuilderDependencies? left, ProviderConventionSetBuilderDependencies? right)
Parameters
Returns
operator !=(ProviderConventionSetBuilderDependencies?, ProviderConventionSetBuilderDependencies?)
public static bool operator !=(ProviderConventionSetBuilderDependencies? left, ProviderConventionSetBuilderDependencies? right)