feat: add EF migrations and design-time factory

- Fix EmailEmailTemplateEntityConfiguration -> EmailTemplateEntityConfiguration
- Rename tables to match domain: templates->email_templates,
  providers->email_channels, provider_usage->email_channel_usage
- Add NotificationDbContextFactory for design-time migrations tooling
- Add InitialCreate migration: email_templates, email_channels, email_channel_usage

Ref: IT-628

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
Anatolii Grynchuk
2026-05-02 00:46:49 +03:00
parent a9bea183c1
commit 73b506992c
7 changed files with 541 additions and 4 deletions
@@ -8,7 +8,7 @@ internal class EmailChannelEntityConfiguration : IEntityTypeConfiguration<EmailC
{
public void Configure(EntityTypeBuilder<EmailChannelEntity> builder)
{
builder.ToTable("providers");
builder.ToTable("email_channels");
builder.HasKey(x => x.Id);
builder.Property(x => x.Id).HasColumnName("id");
@@ -8,7 +8,7 @@ internal class EmailChannelUsageEntityConfiguration : IEntityTypeConfiguration<E
{
public void Configure(EntityTypeBuilder<EmailChannelUsageEntity> builder)
{
builder.ToTable("provider_usage");
builder.ToTable("email_channel_usage");
builder.HasKey(x => x.Id);
builder.Property(x => x.Id).HasColumnName("id");
@@ -4,11 +4,11 @@ using Microsoft.EntityFrameworkCore.Metadata.Builders;
namespace HrynCo.NotificationService.DAL.EF.Configurations;
internal class EmailEmailTemplateEntityConfiguration : IEntityTypeConfiguration<EmailTemplateEntity>
internal class EmailTemplateEntityConfiguration : IEntityTypeConfiguration<EmailTemplateEntity>
{
public void Configure(EntityTypeBuilder<EmailTemplateEntity> builder)
{
builder.ToTable("templates");
builder.ToTable("email_templates");
builder.HasKey(x => x.Id);
builder.Property(x => x.Id).HasColumnName("id");