EFCoreObjectSpaceProviderBuilderExtensions.AddEFCore<TContext>(IObjectSpaceProviderBuilder<TContext>, Action<IServiceProvider, EFCoreObjectSpaceProviderOptionsBuilder>) Method
Adds the EFCoreObjectSpaceProvider<TDbContext> to your WinForms application.
Namespace: DevExpress.ExpressApp.ApplicationBuilder
Assembly: DevExpress.ExpressApp.EFCore.v24.1.dll
NuGet Package: DevExpress.ExpressApp.EFCore
Declaration
public static DbContextBuilder<TContext> AddEFCore<TContext>(
this IObjectSpaceProviderBuilder<TContext> builder,
Action<IServiceProvider, EFCoreObjectSpaceProviderOptionsBuilder> configureObjectSpaceProviderOptions
)
where TContext : IXafApplicationBuilder<TContext>, IAccessor<IServiceCollection>
Parameters
Name | Type | Description |
---|---|---|
builder | IObjectSpaceProviderBuilder<TContext> | Allows you to register and configure Object Space Providers in your application, and chain further provider registrations. |
configureObjectSpaceProviderOptions | Action<IServiceProvider, EFCoreObjectSpaceProviderOptionsBuilder> | Options that allow you to configure the Object Space Provider. |
Type Parameters
Name | Description |
---|---|
TContext | The IWinApplicationBuilder type. |
Returns
Type | Description |
---|---|
DbContextBuilder<TContext> | Allows you to register and configure Object Space Providers in your application, and chain further provider registrations. |
Remarks
This method must be used together with one of the following methods:
- WithDbContext<TDbContext>(Action<XafApplication, DbContextOptionsBuilder>, ServiceLifetime)
- WithAuditedDbContext<TContext>(DbContextBuilder<TContext>, Action<AuditedDbContextConfigurator>, ServiceLifetime)
The following example demonstrates how to use the AddEFCore
method:
File: MySolution.Win\Startup.cs.
using DevExpress.ExpressApp.ApplicationBuilder;
using DevExpress.ExpressApp.Win.ApplicationBuilder;
// ...
public class ApplicationBuilder : IDesignTimeApplicationFactory {
public static WinApplication BuildApplication(string connectionString) {
var builder = WinApplication.CreateBuilder();
builder.UseApplication<MySolutionWindowsFormsApplication>();
builder.ObjectSpaceProviders
.AddEFCore(options => options.PreFetchReferenceProperties())
.WithDbContext<MySolutionEFCoreDbContext>((application, options) => {
// ...
})
.AddNonPersistent();
}
// ...
}