using Microsoft.EntityFrameworkCore; using Shared; using System.Reflection.Metadata; using System.Security.Claims; using System.Xml.Linq; namespace Entities { public class LolDbContext : DbContext { public DbSet skins { get; set; } public DbSet champions { get; set; } public DbSet characteristics { get; set; } public DbSet skills { get; set; } public DbSet runes { get; set; } public DbSet runepages { get; set; } public DbSet largeimages { get; set; } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { optionsBuilder.UseSqlite($"Data Source=Entities.Champions.db"); } protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Entity().Property(e => e.Id).ValueGeneratedOnAdd(); modelBuilder.Entity().Property(e => e.Id).ValueGeneratedOnAdd(); modelBuilder.Entity() .HasMany(x => x.runes) .WithMany(x => x.runepages) .UsingEntity(); modelBuilder.Entity().HasData(new List() { new() { Id = Guid.NewGuid(), Base64 = "aaa" } }); modelBuilder.Entity().HasData(new List() { new() { Name = "Dave", Bio = "Le meilleur Jazzman de France", Class = ChampionClass.Fighter, }, new() { Name = "Armure", Bio = "Solide", Class = ChampionClass.Tank, } }); modelBuilder.Entity().HasData(new List() { new() { Name = "Force", Value = 50, ChampionForeignKey = "Dave", }, new() { Name = "Défense", Value = 75, ChampionForeignKey = "Armure", } }); modelBuilder.Entity().HasData(new List() { new SkinEntity { Name = "Dave de glace", Description = "Enneigé", Icon = "aaa", ChampionForeignKey = "Dave", Price=7.99F }, new SkinEntity { Name = "Armure Fullspeed", Description = "Deja vu", Icon = "aaa", ChampionForeignKey = "Armure", Price=9.99F }, }); modelBuilder.Entity().HasData(new List() { new() { Name = "Boule de feu", Description = "Fire!", SkillType = SkillType.Basic }, new() { Name = "White Star", Description = "Random damage", SkillType = SkillType.Ultimate } }); modelBuilder.Entity().HasData(new List() { new() { Id = Guid.NewGuid(), Name="Runepage_1" } }); modelBuilder.Entity().HasData(new List() { new() { Name = "Bullseye", Description = "Steady shot", RuneFamily = RuneFamily.Precision }, new() { Name = "Alkatraz", Description = "Lock effect", RuneFamily = RuneFamily.Domination } }); } } }