using DXApp.TemplateKitProject.Models; using Microsoft.EntityFrameworkCore; namespace DXApp.TemplateKitProject.Data; public class AppDbContext(DbContextOptions options) : DbContext(options) { public DbSet ZugferdInvoices { get; set; } protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Entity(entity => { // Index für Performance-Optimierung der Rechnungsliste entity.HasIndex(e => e.ImportedAt) .HasDatabaseName("IX_ZugferdInvoices_ImportedAt"); // Index für Duplikatprüfung entity.HasIndex(e => new { e.InvoiceNumber, e.SellerTaxId }) .HasDatabaseName("IX_ZugferdInvoices_InvoiceNumber_SellerTaxId"); // Decimal-Präzision explizit festlegen (behebt EF Core Warnung) entity.Property(e => e.TotalAmount) .HasColumnType("decimal(18,2)"); entity.Property(e => e.TaxAmount) .HasColumnType("decimal(18,2)"); }); } }