EntityFrameworkServiceCollectionExtensions.AddDbContext Метод

Определение

Перегрузки

AddDbContext<TContext>(IServiceCollection, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection . Этот метод используется при использовании внедрения зависимостей в приложении, например с ASP.NET. Дополнительные сведения о настройке внедрения зависимостей см. в разделе http://go.microsoft.com/fwlink/?LinkId=526890 .

AddDbContext<TContext>(IServiceCollection, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection . Этот метод используется при использовании внедрения зависимостей в приложении, например с ASP.NET. Дополнительные сведения о настройке внедрения зависимостей см. в разделе http://go.microsoft.com/fwlink/?LinkId=526890 .

AddDbContext<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection . Этот метод используется при использовании внедрения зависимостей в приложении, например с ASP.NET. Дополнительные сведения о настройке внедрения зависимостей см. в разделе http://go.microsoft.com/fwlink/?LinkId=526890 .

Эта перегрузка содержит объект optionsAction , предоставляющий приложения IServiceProvider . Это полезно, если требуется настроить Entity Framework для разрешения внутренних служб от основного поставщика службы приложений. По умолчанию рекомендуется использовать другую перегрузку, которая позволяет Entity Framework создавать и обслуживать собственные IServiceProvider для внутренних служб Entity Framework.

AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

AddDbContext<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

Эта перегрузка имеет объект optionsAction , который предоставляет приложение IServiceProvider . Это полезно, если требуется настроить Entity Framework Core для разрешения внутренних служб от основного поставщика службы приложений. По умолчанию рекомендуется использовать AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime) что позволяет Entity Framework создавать и обслуживать собственные IServiceProvider для внутренних Entity Framework служб.

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

Эта перегрузка имеет объект optionsAction , который предоставляет приложение IServiceProvider . Это полезно, если требуется настроить Entity Framework Core для разрешения внутренних служб от основного поставщика службы приложений. По умолчанию рекомендуется использовать AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime) что позволяет Entity Framework создавать и обслуживать собственные IServiceProvider для внутренних Entity Framework служб.

AddDbContext<TContext>(IServiceCollection, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection . Этот метод используется при использовании внедрения зависимостей в приложении, например с ASP.NET. Дополнительные сведения о настройке внедрения зависимостей см. в разделе http://go.microsoft.com/fwlink/?LinkId=526890 .

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, contextLifetime As ServiceLifetime) As IServiceCollection

Параметры типа

TContext

Тип регистрируемого контекста.

Параметры

serviceCollection
IServiceCollection

Коллекция IServiceCollection, в которую добавляются службы.

contextLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContext в контейнере.

Возвращаемое значение

IServiceCollection

Ту же коллекцию служб, чтобы несколько вызовов могли быть объединены в цепочку.

Примеры

public void ConfigureServices(IServiceCollection services) 
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(ServiceLifetime.Scoped); 
}

Применяется к

AddDbContext<TContext>(IServiceCollection, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, contextLifetime As ServiceLifetime, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

Параметры типа

TContext

Тип регистрируемого контекста.

Параметры

serviceCollection
IServiceCollection

Коллекция IServiceCollection, в которую добавляются службы.

contextLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContext в контейнере.

optionsLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContextOptions в контейнере.

Возвращаемое значение

IServiceCollection

Ту же коллекцию служб, чтобы несколько вызовов могли быть объединены в цепочку.

Примеры

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(ServiceLifetime.Scoped);
}

Применяется к

AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection . Этот метод используется при использовании внедрения зависимостей в приложении, например с ASP.NET. Дополнительные сведения о настройке внедрения зависимостей см. в разделе http://go.microsoft.com/fwlink/?LinkId=526890 .

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction = default, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, Optional optionsAction As Action(Of DbContextOptionsBuilder) = Nothing, Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

Параметры типа

TContext

Тип регистрируемого контекста.

Параметры

serviceCollection
IServiceCollection

Коллекция IServiceCollection, в которую добавляются службы.

optionsAction
Action<DbContextOptionsBuilder>

Необязательное действие для настройки DbContextOptions для контекста. Это предоставляет альтернативу выполнению конфигурации контекста путем переопределения OnConfiguring(DbContextOptionsBuilder) метода в производном контексте.

Если здесь указано действие, OnConfiguring(DbContextOptionsBuilder) метод по-прежнему будет выполняться, если он был переопределен в производном контексте. OnConfiguring(DbContextOptionsBuilder) Конфигурация будет применена в дополнение к конфигурации, выполненной здесь.

Чтобы параметры передавались в контекст, необходимо предоставить конструктор в контексте, который принимает DbContextOptions<TContext> и передает его базовому конструктору DbContext .

contextLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContext в контейнере.

Возвращаемое значение

IServiceCollection

Ту же коллекцию служб, чтобы несколько вызовов могли быть объединены в цепочку.

Примеры

public void ConfigureServices(IServiceCollection services) 
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(options => options.UseSqlServer(connectionString)); 
}

Применяется к

AddDbContext<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection . Этот метод используется при использовании внедрения зависимостей в приложении, например с ASP.NET. Дополнительные сведения о настройке внедрения зависимостей см. в разделе http://go.microsoft.com/fwlink/?LinkId=526890 .

Эта перегрузка содержит объект optionsAction , предоставляющий приложения IServiceProvider . Это полезно, если требуется настроить Entity Framework для разрешения внутренних служб от основного поставщика службы приложений. По умолчанию рекомендуется использовать другую перегрузку, которая позволяет Entity Framework создавать и обслуживать собственные IServiceProvider для внутренних служб Entity Framework.

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

Параметры типа

TContext

Тип регистрируемого контекста.

Параметры

serviceCollection
IServiceCollection

Коллекция IServiceCollection, в которую добавляются службы.

optionsAction
Action<IServiceProvider,DbContextOptionsBuilder>

Необязательное действие для настройки DbContextOptions для контекста. Это предоставляет альтернативу выполнению конфигурации контекста путем переопределения OnConfiguring(DbContextOptionsBuilder) метода в производном контексте.

Если здесь указано действие, OnConfiguring(DbContextOptionsBuilder) метод по-прежнему будет выполняться, если он был переопределен в производном контексте. OnConfiguring(DbContextOptionsBuilder) Конфигурация будет применена в дополнение к конфигурации, выполненной здесь.

Чтобы параметры передавались в контекст, необходимо предоставить конструктор в контексте, который принимает DbContextOptions<TContext> и передает его базовому конструктору DbContext .

contextLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContext в контейнере.

Возвращаемое значение

IServiceCollection

Ту же коллекцию служб, чтобы несколько вызовов могли быть объединены в цепочку.

Примеры

public void ConfigureServices(IServiceCollection services) 
{
    var connectionString = "connection string to database";

    services
        .AddEntityFrameworkSqlServer()
        .AddDbContext<MyContext>((serviceProvider, options) => 
            options.UseSqlServer(connectionString)
                   .UseInternalServiceProvider(serviceProvider)); 
}

Применяется к

AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction = default, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, Optional optionsAction As Action(Of DbContextOptionsBuilder) = Nothing, Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

Параметры типа

TContext

Тип регистрируемого контекста.

Параметры

serviceCollection
IServiceCollection

Коллекция IServiceCollection, в которую добавляются службы.

optionsAction
Action<DbContextOptionsBuilder>

Необязательное действие для настройки DbContextOptions для контекста. Это предоставляет альтернативу выполнению конфигурации контекста путем переопределения OnConfiguring(DbContextOptionsBuilder) метода в производном контексте.

Если здесь указано действие, OnConfiguring(DbContextOptionsBuilder) метод по-прежнему будет выполняться, если он был переопределен в производном контексте. OnConfiguring(DbContextOptionsBuilder) Конфигурация будет применена в дополнение к конфигурации, выполненной здесь.

Чтобы параметры передавались в контекст, необходимо предоставить конструктор в контексте, который принимает DbContextOptions<TContext> и передает его базовому конструктору DbContext .

contextLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContext в контейнере.

optionsLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContextOptions в контейнере.

Возвращаемое значение

IServiceCollection

Ту же коллекцию служб, чтобы несколько вызовов могли быть объединены в цепочку.

Примеры

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(options => options.UseSqlServer(connectionString));
}

Применяется к

AddDbContext<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

Эта перегрузка имеет объект optionsAction , который предоставляет приложение IServiceProvider . Это полезно, если требуется настроить Entity Framework Core для разрешения внутренних служб от основного поставщика службы приложений. По умолчанию рекомендуется использовать AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime) что позволяет Entity Framework создавать и обслуживать собственные IServiceProvider для внутренних Entity Framework служб.

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

Параметры типа

TContext

Тип регистрируемого контекста.

Параметры

serviceCollection
IServiceCollection

Коллекция IServiceCollection, в которую добавляются службы.

optionsAction
Action<IServiceProvider,DbContextOptionsBuilder>

Необязательное действие для настройки DbContextOptions для контекста. Это предоставляет альтернативу выполнению конфигурации контекста путем переопределения OnConfiguring(DbContextOptionsBuilder) метода в производном контексте.

Если здесь указано действие, OnConfiguring(DbContextOptionsBuilder) метод по-прежнему будет выполняться, если он был переопределен в производном контексте. OnConfiguring(DbContextOptionsBuilder) Конфигурация будет применена в дополнение к конфигурации, выполненной здесь.

Чтобы параметры передавались в контекст, необходимо предоставить конструктор в контексте, который принимает DbContextOptions<TContext> и передает его базовому конструктору DbContext .

contextLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContext в контейнере.

optionsLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContextOptions в контейнере.

Возвращаемое значение

IServiceCollection

Ту же коллекцию служб, чтобы несколько вызовов могли быть объединены в цепочку.

Примеры

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services
        .AddEntityFrameworkSqlServer()
        .AddDbContext<MyContext>((serviceProvider, options) =>
            options.UseSqlServer(connectionString)
                   .UseInternalServiceProvider(serviceProvider));
}

Применяется к

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContextService : class where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'ContextService : null and 'ContextImplementation :> Microsoft.EntityFrameworkCore.DbContext and 'ContextImplementation :> 'ContextService)
<Extension()>
Public Function AddDbContext(Of TContextService As Class, TContextImplementation As Class) (serviceCollection As IServiceCollection, contextLifetime As ServiceLifetime, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

Параметры типа

TContextService

Класс или интерфейс, который будет использоваться для разрешения контекста из контейнера.

TContextImplementation

Конкретный тип реализации для создания.

Параметры

serviceCollection
IServiceCollection

Коллекция IServiceCollection, в которую добавляются службы.

contextLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContext в контейнере.

optionsLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContextOptions в контейнере.

Возвращаемое значение

IServiceCollection

Ту же коллекцию служб, чтобы несколько вызовов могли быть объединены в цепочку.

Примеры

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(ServiceLifetime.Scoped);
}

Применяется к

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction = default, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'ContextImplementation :> Microsoft.EntityFrameworkCore.DbContext and 'ContextImplementation :> 'ContextService)
<Extension()>
Public Function AddDbContext(Of TContextService, TContextImplementation) (serviceCollection As IServiceCollection, Optional optionsAction As Action(Of DbContextOptionsBuilder) = Nothing, Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

Параметры типа

TContextService

Класс или интерфейс, который будет использоваться для разрешения контекста из контейнера.

TContextImplementation

Конкретный тип реализации для создания.

Параметры

serviceCollection
IServiceCollection

Коллекция IServiceCollection, в которую добавляются службы.

optionsAction
Action<DbContextOptionsBuilder>

Необязательное действие для настройки DbContextOptions для контекста. Это предоставляет альтернативу выполнению конфигурации контекста путем переопределения OnConfiguring(DbContextOptionsBuilder) метода в производном контексте.

Если здесь указано действие, OnConfiguring(DbContextOptionsBuilder) метод по-прежнему будет выполняться, если он был переопределен в производном контексте. OnConfiguring(DbContextOptionsBuilder) Конфигурация будет применена в дополнение к конфигурации, выполненной здесь.

Чтобы параметры передавались в контекст, необходимо предоставить конструктор в контексте, который принимает DbContextOptions<TContext> и передает его базовому конструктору DbContext .

contextLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContext в контейнере.

optionsLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContextOptions в контейнере.

Возвращаемое значение

IServiceCollection

Ту же коллекцию служб, чтобы несколько вызовов могли быть объединены в цепочку.

Примеры

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(options => options.UseSqlServer(connectionString));
}

Применяется к

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

Регистрирует заданный контекст в качестве службы в IServiceCollection .

Используйте этот метод при внедрении зависимостей в приложение, например с помощью ASP.NET Core. Для приложений, которые не используют внедрение зависимостей, рассмотрите возможность создания DbContext экземпляров непосредственно с помощью конструктора. OnConfiguring(DbContextOptionsBuilder)Затем метод можно переопределить, чтобы настроить строку подключения и другие параметры.

Дополнительные сведения об использовании этого метода см. в документации по Entity Framework Core по адресу https://aka.ms/efdocs . Дополнительные сведения об использовании внедрения зависимостей см. в разделе https://go.microsoft.com/fwlink/?LinkId=526890 .

Эта перегрузка имеет объект optionsAction , который предоставляет приложение IServiceProvider . Это полезно, если требуется настроить Entity Framework Core для разрешения внутренних служб от основного поставщика службы приложений. По умолчанию рекомендуется использовать AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime) что позволяет Entity Framework создавать и обслуживать собственные IServiceProvider для внутренних Entity Framework служб.

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'ContextImplementation :> Microsoft.EntityFrameworkCore.DbContext and 'ContextImplementation :> 'ContextService)
<Extension()>
Public Function AddDbContext(Of TContextService, TContextImplementation) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

Параметры типа

TContextService

Класс или интерфейс, который будет использоваться для разрешения контекста из контейнера.

TContextImplementation

Конкретный тип реализации для создания.

Параметры

serviceCollection
IServiceCollection

Коллекция IServiceCollection, в которую добавляются службы.

optionsAction
Action<IServiceProvider,DbContextOptionsBuilder>

Необязательное действие для настройки DbContextOptions для контекста. Это предоставляет альтернативу выполнению конфигурации контекста путем переопределения OnConfiguring(DbContextOptionsBuilder) метода в производном контексте.

Если здесь указано действие, OnConfiguring(DbContextOptionsBuilder) метод по-прежнему будет выполняться, если он был переопределен в производном контексте. OnConfiguring(DbContextOptionsBuilder) Конфигурация будет применена в дополнение к конфигурации, выполненной здесь.

Чтобы параметры передавались в контекст, необходимо предоставить конструктор в контексте, который принимает DbContextOptions<TContext> и передает его базовому конструктору DbContext .

contextLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContext в контейнере.

optionsLifetime
ServiceLifetime

Время существования, в течение которого регистрируется служба DbContextOptions в контейнере.

Возвращаемое значение

IServiceCollection

Ту же коллекцию служб, чтобы несколько вызовов могли быть объединены в цепочку.

Примеры

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services
        .AddEntityFrameworkSqlServer()
        .AddDbContext<MyContext>((serviceProvider, options) =>
            options.UseSqlServer(connectionString)
                   .UseInternalServiceProvider(serviceProvider));
}

Применяется к