Class RelationalCommandBuilderDependencies
- Namespace
- Microsoft.EntityFrameworkCore.Storage
- Assembly
- Microsoft.EntityFrameworkCore.Relational.dll
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.
public sealed record RelationalCommandBuilderDependencies : IEquatable<RelationalCommandBuilderDependencies>
- Inheritance
-
RelationalCommandBuilderDependencies
- Implements
- Inherited Members
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 '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.
Constructors
RelationalCommandBuilderDependencies(IRelationalTypeMappingSource, IExceptionDetector)
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.
public RelationalCommandBuilderDependencies(IRelationalTypeMappingSource typeMappingSource, IExceptionDetector exceptionDetector)
Parameters
typeMappingSource
IRelationalTypeMappingSourceexceptionDetector
IExceptionDetector
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 'With...' methods. Do not call the constructor at any point in this process.
Properties
ExceptionDetector
The exception detector.
public IExceptionDetector ExceptionDetector { get; init; }
Property Value
- IExceptionDetector
TypeMappingSource
The source for RelationalTypeMappings to use.
[Obsolete("RelationalCommandBuilder doesn't need TypeMappingSource. Derived class should inject the service if needed.")]
public IRelationalTypeMappingSource TypeMappingSource { get; init; }
Property Value
Methods
Equals(RelationalCommandBuilderDependencies?)
public bool Equals(RelationalCommandBuilderDependencies? 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
<Clone>$()
public RelationalCommandBuilderDependencies <Clone>$()
Returns
Operators
operator ==(RelationalCommandBuilderDependencies?, RelationalCommandBuilderDependencies?)
public static bool operator ==(RelationalCommandBuilderDependencies? left, RelationalCommandBuilderDependencies? right)
Parameters
Returns
operator !=(RelationalCommandBuilderDependencies?, RelationalCommandBuilderDependencies?)
public static bool operator !=(RelationalCommandBuilderDependencies? left, RelationalCommandBuilderDependencies? right)