Share via


ExecutionStrategyDependencies Class

Definition

Service dependencies parameter class for IExecutionStrategy

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

public sealed class ExecutionStrategyDependencies
public sealed class ExecutionStrategyDependencies : IEquatable<Microsoft.EntityFrameworkCore.Storage.ExecutionStrategyDependencies>
type ExecutionStrategyDependencies = class
type ExecutionStrategyDependencies = class
    interface IEquatable<ExecutionStrategyDependencies>
Public NotInheritable Class ExecutionStrategyDependencies
Public NotInheritable Class ExecutionStrategyDependencies
Implements IEquatable(Of ExecutionStrategyDependencies)
Inheritance
ExecutionStrategyDependencies
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 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

ExecutionStrategyDependencies(ICurrentDbContext, IDbContextOptions, IDiagnosticsLogger<DbLoggerCategory.Infrastructure>)

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.

ExecutionStrategyDependencies(ICurrentDbContext, IDbContextOptions, IDiagnosticsLogger<DbLoggerCategory.Infrastructure>)

Creates the service dependencies parameter object for a IExecutionStrategy.

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

CurrentContext

Indirection to the current DbContext instance.

CurrentDbContext

Indirection to the current DbContext instance.

Logger

The logger.

Options

The options for the current DbContext instance.

Methods

<Clone>$()
Equals(ExecutionStrategyDependencies)
Equals(Object)
GetHashCode()
ToString()
With(ICurrentDbContext)

Clones this dependency parameter object with one service replaced.

With(ICurrentDbContext)

Clones this dependency parameter object with one service replaced.

With(IDbContextOptions)

Clones this dependency parameter object with one service replaced.

With(IDiagnosticsLogger<DbLoggerCategory.Infrastructure>)

Clones this dependency parameter object with one service replaced.

Operators

Equality(ExecutionStrategyDependencies, ExecutionStrategyDependencies)
Inequality(ExecutionStrategyDependencies, ExecutionStrategyDependencies)

Applies to