//------------------------------------------------------------------------------ // This is auto-generated code. //------------------------------------------------------------------------------ // This code was generated by Entity Developer tool using EF Core template. // Code is generated on: 11.04.2022 17:16:51 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. //------------------------------------------------------------------------------ using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.Common; using System.Linq; using System.Linq.Expressions; using System.Reflection; using System.Threading.Tasks; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Internal; using Microsoft.EntityFrameworkCore.Metadata; using FoodsharingSiegen.Contracts.Entity; namespace FoodsharingSiegen.Server.Data { public partial class FsContext : DbContext { public FsContext() : base() { OnCreated(); } public FsContext(DbContextOptions options) : base(options) { OnCreated(); } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { if (!optionsBuilder.IsConfigured || (!optionsBuilder.Options.Extensions.OfType().Any(ext => !string.IsNullOrEmpty(ext.ConnectionString) || ext.Connection != null) && !optionsBuilder.Options.Extensions.Any(ext => !(ext is RelationalOptionsExtension) && !(ext is CoreOptionsExtension)))) { } CustomizeConfiguration(ref optionsBuilder); base.OnConfiguring(optionsBuilder); } partial void CustomizeConfiguration(ref DbContextOptionsBuilder optionsBuilder); public virtual DbSet Users { get; set; } public virtual DbSet Prospects { get; set; } public virtual DbSet Interactions { get; set; } protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); this.UserMapping(modelBuilder); this.CustomizeUserMapping(modelBuilder); this.ProspectMapping(modelBuilder); this.CustomizeProspectMapping(modelBuilder); this.InteractionMapping(modelBuilder); this.CustomizeInteractionMapping(modelBuilder); RelationshipsMapping(modelBuilder); CustomizeMapping(ref modelBuilder); } #region User Mapping private void UserMapping(ModelBuilder modelBuilder) { modelBuilder.Entity().ToTable(@"Users"); modelBuilder.Entity().Property(x => x.Id).HasColumnName(@"Id").IsRequired().ValueGeneratedOnAdd(); modelBuilder.Entity().Property(x => x.Mail).HasColumnName(@"Mail").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Type).HasColumnName(@"Type").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Verified).HasColumnName(@"Verified").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Name).HasColumnName(@"Name").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Created).HasColumnName(@"Created").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.EncryptedPassword).HasColumnName(@"EncryptedPassword").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Groups).HasColumnName(@"Groups").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.ForceLogout).HasColumnName(@"ForceLogout").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().HasKey(@"Id"); } partial void CustomizeUserMapping(ModelBuilder modelBuilder); #endregion #region Prospect Mapping private void ProspectMapping(ModelBuilder modelBuilder) { modelBuilder.Entity().ToTable(@"Prospects"); modelBuilder.Entity().Property(x => x.Id).HasColumnName(@"Id").IsRequired().ValueGeneratedOnAdd(); modelBuilder.Entity().Property(x => x.FsId).HasColumnName(@"FsId").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Name).HasColumnName(@"Name").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Created).HasColumnName(@"Created").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Memo).HasColumnName(@"Memo").ValueGeneratedNever(); modelBuilder.Entity().HasKey(@"Id"); } partial void CustomizeProspectMapping(ModelBuilder modelBuilder); #endregion #region Interaction Mapping private void InteractionMapping(ModelBuilder modelBuilder) { modelBuilder.Entity().ToTable(@"Interactions"); modelBuilder.Entity().Property(x => x.Id).HasColumnName(@"Id").IsRequired().ValueGeneratedOnAdd(); modelBuilder.Entity().Property(x => x.UserId).HasColumnName(@"UserId").ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Date).HasColumnName(@"Date").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Info).HasColumnName(@"Info").ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Type).HasColumnName(@"Type").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.ProspectId).HasColumnName(@"ProspectId").ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Alert).HasColumnName(@"Alert").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.NotNeeded).HasColumnName(@"NotNeeded").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().Property(x => x.Created).HasColumnName(@"Created").IsRequired().ValueGeneratedNever(); modelBuilder.Entity().HasKey(@"Id"); } partial void CustomizeInteractionMapping(ModelBuilder modelBuilder); #endregion private void RelationshipsMapping(ModelBuilder modelBuilder) { modelBuilder.Entity().HasMany(x => x.Interactions).WithOne(op => op.User).HasForeignKey(@"UserId").IsRequired(true); modelBuilder.Entity().HasMany(x => x.Interactions).WithOne(op => op.Prospect).HasForeignKey(@"ProspectId").IsRequired(true); modelBuilder.Entity().HasOne(x => x.User).WithMany(op => op.Interactions).HasForeignKey(@"UserId").IsRequired(true); modelBuilder.Entity().HasOne(x => x.Prospect).WithMany(op => op.Interactions).HasForeignKey(@"ProspectId").IsRequired(true); } partial void CustomizeMapping(ref ModelBuilder modelBuilder); public bool HasChanges() { return ChangeTracker.Entries().Any(e => e.State == Microsoft.EntityFrameworkCore.EntityState.Added || e.State == Microsoft.EntityFrameworkCore.EntityState.Modified || e.State == Microsoft.EntityFrameworkCore.EntityState.Deleted); } partial void OnCreated(); } }