AspireAzureEFPostgreSqlExtensions Methods
Class Methods 2 members
Provides extension methods for registering a PostgreSQL database context in an Aspire application.
AddAzureNpgsqlDbContext(IHostApplicationBuilder, string, Action<AzureNpgsqlEntityFrameworkCorePostgreSQLSettings>, Action<DbContextOptionsBuilder>) Section titled AddAzureNpgsqlDbContext(IHostApplicationBuilder, string, Action<AzureNpgsqlEntityFrameworkCorePostgreSQLSettings>, Action<DbContextOptionsBuilder>) extension Registers the given
EntityFrameworkCore.DbContext as a service in the services provided by the builder. Enables db context pooling, retries, corresponding health check, logging and telemetry. public static class AspireAzureEFPostgreSqlExtensions{ public static void AddAzureNpgsqlDbContext<TContext>( this IHostApplicationBuilder builder, string connectionName, Action<AzureNpgsqlEntityFrameworkCorePostgreSQLSettings>? configureSettings = null, Action<DbContextOptionsBuilder>? configureDbContextOptions = null) { // ... }}Parameters
builder IHostApplicationBuilder The Hosting.IHostApplicationBuilder to read config from and add services to. connectionName string A name used to retrieve the connection string from the ConnectionStrings configuration section. configureSettings Action<AzureNpgsqlEntityFrameworkCorePostgreSQLSettings> optional An optional delegate that can be used for customizing options. It's invoked after the settings are read from the configuration. configureDbContextOptions Action<DbContextOptionsBuilder> optional An optional delegate to configure the EntityFrameworkCore.DbContextOptions for the context. Exceptions
ArgumentNullException Thrown if mandatory builder is null. InvalidOperationException Thrown when mandatory NpgsqlEntityFrameworkCorePostgreSQLSettings.ConnectionString is not provided. Remarks
Reads the configuration from "Aspire:Npgsql:EntityFrameworkCore:PostgreSQL:{typeof(TContext).Name}" config section, or "Aspire:Npgsql:EntityFrameworkCore:PostgreSQL" if former does not exist.
The DbContext.OnConfiguring method can then be overridden to configure EntityFrameworkCore.DbContext options.
EnrichAzureNpgsqlDbContext(IHostApplicationBuilder, Action<AzureNpgsqlEntityFrameworkCorePostgreSQLSettings>) Section titled EnrichAzureNpgsqlDbContext(IHostApplicationBuilder, Action<AzureNpgsqlEntityFrameworkCorePostgreSQLSettings>) extension Configures retries, health check, logging and telemetry for the
EntityFrameworkCore.DbContext. public static class AspireAzureEFPostgreSqlExtensions{ public static void EnrichAzureNpgsqlDbContext<TContext>( this IHostApplicationBuilder builder, Action<AzureNpgsqlEntityFrameworkCorePostgreSQLSettings>? configureSettings = null) { // ... }}Parameters
builder IHostApplicationBuilder configureSettings Action<AzureNpgsqlEntityFrameworkCorePostgreSQLSettings> optional Exceptions
ArgumentNullException Thrown if mandatory builder is null. InvalidOperationException Thrown when mandatory EntityFrameworkCore.DbContext is not registered in DI.