Added instrastructure extensions
Implemented database service registration
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
namespace PostFundManagement.Infrastructure.Extensions;
|
||||
|
||||
public static class Constants
|
||||
{
|
||||
public const string DatabaseConfigName = "PfmDatabase";
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using PostFundManagement.Infrastructure.Database;
|
||||
using static PostFundManagement.Infrastructure.Extensions.Constants;
|
||||
|
||||
namespace PostFundManagement.Infrastructure.Extensions;
|
||||
|
||||
public static class Postgres
|
||||
{
|
||||
public static IServiceCollection AddApplicationDbContext(this IServiceCollection services, IConfiguration configuration)
|
||||
{
|
||||
var connectionString = configuration.GetConnectionString(DatabaseConfigName)
|
||||
?? throw new InvalidOperationException($"Connection string '{DatabaseConfigName}' was not found in configuration.");
|
||||
|
||||
services.AddPooledDbContextFactory<ApplicationDbContext>(builder => builder.UseNpgsql(connectionString));
|
||||
|
||||
return services;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user