using ApiPolo.Interfaces; using ApiPolo.Models; using ApiPolo.Models.Security_dbcontext; using Microsoft.EntityFrameworkCore; namespace ApiPolo.Data { /// public class Maras_DbContext : DbContext,ITenantDbContext { #region PROPERTIES public DbSet? Causali { get; set; } public DbSet? Chiusure { get; set; } public DbSet? Azi { get; set; } public DbSet? ccci { get; set; } public DbSet? ccciWiev { get; set; } public DbSet? Chiamate { get; set; } public DbSet? Clienti { get; set; } public DbSet? Componen { get; set; } // IN CONFLITTO CON Compo_Impia //public DbSet? Componen { get; set; } //CAMBIARE NOME!!! public DbSet? Impia { get; set; } public DbSet? Mag { get; set; } public DbSet? Magaz { get; set; } public DbSet? Manutenzioni { get; set; } public DbSet? Pagamenti { get; set; } public DbSet? Prese { get; set; } public DbSet? Rapps { get; set; } public DbSet? rapp { get; set; } public DbSet? Sost { get; set; } public DbSet? Saldi { get; set; } public DbSet? StoRapp { get; set; } public DbSet? Tecnici { get; set; } public DbSet? StoImp { get; set; } public DbSet? Timbr { get; set; } public DbSet? Commesse { get; set; } #endregion /// public Maras_DbContext(DbContextOptions options) : base(options) { } /// protected override void OnModelCreating(ModelBuilder modelBuilder) { void TryConfigureEntity(Action configure, string entityName) { try { configure(modelBuilder); } catch (Exception ex) { Console.WriteLine($"Warning: Skipping entity '{entityName}' due to error: {ex.Message}"); } } TryConfigureEntity(mb => mb.Entity().ToView("API_CAUS_RAPP"), "API_CAUS_RAPP"); TryConfigureEntity(mb => mb.Entity().ToView("API_CHIUSURE"), "API_CHIUSURE"); TryConfigureEntity(mb => { mb.Entity().ToTable("PIAZIRIF"); mb.Entity().HasKey(table => new { table.piazihoc, table.picodtec, table.pirifazi }); }, "PIAZIRIF"); TryConfigureEntity(mb => { mb.Entity().ToTable("PIASSCHIU"); mb.Entity().HasKey(table => new { table.picodazi, table.picodint, table.picodchi }); }, "PIASSCHIU"); TryConfigureEntity(mb => mb.Entity().ToView("API_ASSCHIU"), "API_ASSCHIU"); TryConfigureEntity(mb => mb.Entity().ToView("API_CHIAMATE"), "API_CHIAMATE"); TryConfigureEntity(mb => mb.Entity().ToView("API_CLIENTI"), "API_CLIENTI"); TryConfigureEntity(mb => { mb.Entity().ToTable("DISCOMICOMIMP"); mb.Entity().HasKey(table => new { table.cocodimp, table.cprownum, table.cocodazi }); }, "DISCOMICOMIMP"); TryConfigureEntity(mb => mb.Entity().ToView("API_MICOMIMP"), "API_MICOMIMP"); TryConfigureEntity(mb => mb.Entity().ToView("API_IMPIANTI"), "API_IMPIANTI"); TryConfigureEntity(mb => { mb.Entity().ToTable("DISCOMAG_NEW"); mb.Entity().HasKey(table => new { table.seriale_rapportino, table.riga }); }, "DISCOMAG_NEW"); TryConfigureEntity(mb => mb.Entity().ToTable("DISCOMAGAZZIN"), "DISCOMAGAZZIN"); TryConfigureEntity(mb => mb.Entity().ToView("API_MANPROG"), "API_MANPROG"); TryConfigureEntity(mb => mb.Entity().ToView("API_PAGAMENTI"), "API_PAGAMENTI"); TryConfigureEntity(mb => { mb.Entity().ToTable("PIPRESA"); mb.Entity().HasKey(table => new { table.picodazi, table.pimpianto, table.picodint, table.pidatman }); }, "PIPRESA"); TryConfigureEntity(mb => mb.Entity().ToTable("RAPP_NEW"), "RAPP_NEW"); TryConfigureEntity(mb => mb.Entity().ToView("API_RAPPORTINI"), "API_RAPPORTINI"); TryConfigureEntity(mb => mb.Entity().ToView("API_SALDIART_PREZZI"), "API_SALDIART_PREZZI"); TryConfigureEntity(mb => mb.Entity().ToView("API_SOSTITUZIONI"), "API_SOSTITUZIONI"); TryConfigureEntity(mb => mb.Entity().ToView("API_STO_RAPP"), "API_STO_RAPP"); TryConfigureEntity(mb => mb.Entity().ToView("API_TECNICI"), "API_TECNICI"); TryConfigureEntity(mb => mb.Entity().ToTable("TIMBRATURE"), "TIMBRATURE"); TryConfigureEntity(mb => mb.Entity().ToView("API_COMMESSE"), "API_COMMESSE"); TryConfigureEntity(mb => mb.Entity().ToView("API_STO_IMP"), "API_STO_IMP"); } } }