From 7a9b9370e2d7dfdb2f2b3feeab2776d798c423ad Mon Sep 17 00:00:00 2001 From: Corentin R <76619184+Koroh63@users.noreply.github.com> Date: Wed, 15 Mar 2023 16:50:27 +0100 Subject: [PATCH] add --- Sources/EntityFramework/LargeImageEntity.cs | 22 +++++ .../20230312170120_stubMig.Designer.cs | 83 ------------------ .../Migrations/20230312170120_stubMig.cs | 49 ----------- .../LoLDBContextWithStubModelSnapshot.cs | 80 ----------------- Sources/EntityFramework/SkinEntity.cs | 79 +++++++++++++++++ Sources/EntityFramework/StubbedContext.cs | 44 ++++++++++ Sources/EntityFramework/champion.db | Bin 20480 -> 0 bytes Sources/EntityFramework/champion.db-shm | Bin 32768 -> 0 bytes Sources/EntityFramework/champion.db-wal | 0 9 files changed, 145 insertions(+), 212 deletions(-) create mode 100644 Sources/EntityFramework/LargeImageEntity.cs delete mode 100644 Sources/EntityFramework/Migrations/20230312170120_stubMig.Designer.cs delete mode 100644 Sources/EntityFramework/Migrations/20230312170120_stubMig.cs delete mode 100644 Sources/EntityFramework/Migrations/LoLDBContextWithStubModelSnapshot.cs create mode 100644 Sources/EntityFramework/SkinEntity.cs create mode 100644 Sources/EntityFramework/StubbedContext.cs delete mode 100644 Sources/EntityFramework/champion.db delete mode 100644 Sources/EntityFramework/champion.db-shm delete mode 100644 Sources/EntityFramework/champion.db-wal diff --git a/Sources/EntityFramework/LargeImageEntity.cs b/Sources/EntityFramework/LargeImageEntity.cs new file mode 100644 index 0000000..b925a83 --- /dev/null +++ b/Sources/EntityFramework/LargeImageEntity.cs @@ -0,0 +1,22 @@ +using Microsoft.EntityFrameworkCore; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EntityFramework +{ + + public class LargeImageEntity + { + public int Id { get; set; } + public string Base64 { get; set; } + + //public LargeImageEntity(string base64) + //{ + // Base64 = base64; + //} + } +} diff --git a/Sources/EntityFramework/Migrations/20230312170120_stubMig.Designer.cs b/Sources/EntityFramework/Migrations/20230312170120_stubMig.Designer.cs deleted file mode 100644 index 2b24874..0000000 --- a/Sources/EntityFramework/Migrations/20230312170120_stubMig.Designer.cs +++ /dev/null @@ -1,83 +0,0 @@ -// -using EntityFramework; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace EntityFramework.Migrations -{ - [DbContext(typeof(LoLDBContextWithStub))] - [Migration("20230312170120_stubMig")] - partial class stubMig - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder.HasAnnotation("ProductVersion", "7.0.2"); - - modelBuilder.Entity("EntityFramework.ChampionEntity", b => - { - b.Property("Name") - .HasMaxLength(50) - .HasColumnType("TEXT"); - - b.Property("Bio") - .IsRequired() - .HasMaxLength(500) - .HasColumnType("string") - .HasColumnName("Bio"); - - b.Property("Icon") - .IsRequired() - .HasColumnType("TEXT"); - - b.HasKey("Name"); - - b.ToTable("Champion", (string)null); - - b.HasData( - new - { - Name = "Akali", - Bio = "", - Icon = "" - }, - new - { - Name = "Aatrox", - Bio = "", - Icon = "" - }, - new - { - Name = "Ahri", - Bio = "", - Icon = "" - }, - new - { - Name = "Akshan", - Bio = "", - Icon = "" - }, - new - { - Name = "Bard", - Bio = "", - Icon = "" - }, - new - { - Name = "Alistar", - Bio = "", - Icon = "" - }); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/Sources/EntityFramework/Migrations/20230312170120_stubMig.cs b/Sources/EntityFramework/Migrations/20230312170120_stubMig.cs deleted file mode 100644 index 3323fa4..0000000 --- a/Sources/EntityFramework/Migrations/20230312170120_stubMig.cs +++ /dev/null @@ -1,49 +0,0 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional - -namespace EntityFramework.Migrations -{ - /// - public partial class stubMig : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.CreateTable( - name: "Champion", - columns: table => new - { - Name = table.Column(type: "TEXT", maxLength: 50, nullable: false), - Bio = table.Column(type: "string", maxLength: 500, nullable: false), - Icon = table.Column(type: "TEXT", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_Champion", x => x.Name); - }); - - migrationBuilder.InsertData( - table: "Champion", - columns: new[] { "Name", "Bio", "Icon" }, - values: new object[,] - { - { "Aatrox", "", "" }, - { "Ahri", "", "" }, - { "Akali", "", "" }, - { "Akshan", "", "" }, - { "Alistar", "", "" }, - { "Bard", "", "" } - }); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropTable( - name: "Champion"); - } - } -} diff --git a/Sources/EntityFramework/Migrations/LoLDBContextWithStubModelSnapshot.cs b/Sources/EntityFramework/Migrations/LoLDBContextWithStubModelSnapshot.cs deleted file mode 100644 index ba61c51..0000000 --- a/Sources/EntityFramework/Migrations/LoLDBContextWithStubModelSnapshot.cs +++ /dev/null @@ -1,80 +0,0 @@ -// -using EntityFramework; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace EntityFramework.Migrations -{ - [DbContext(typeof(LoLDBContextWithStub))] - partial class LoLDBContextWithStubModelSnapshot : ModelSnapshot - { - protected override void BuildModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder.HasAnnotation("ProductVersion", "7.0.2"); - - modelBuilder.Entity("EntityFramework.ChampionEntity", b => - { - b.Property("Name") - .HasMaxLength(50) - .HasColumnType("TEXT"); - - b.Property("Bio") - .IsRequired() - .HasMaxLength(500) - .HasColumnType("string") - .HasColumnName("Bio"); - - b.Property("Icon") - .IsRequired() - .HasColumnType("TEXT"); - - b.HasKey("Name"); - - b.ToTable("Champion", (string)null); - - b.HasData( - new - { - Name = "Akali", - Bio = "", - Icon = "" - }, - new - { - Name = "Aatrox", - Bio = "", - Icon = "" - }, - new - { - Name = "Ahri", - Bio = "", - Icon = "" - }, - new - { - Name = "Akshan", - Bio = "", - Icon = "" - }, - new - { - Name = "Bard", - Bio = "", - Icon = "" - }, - new - { - Name = "Alistar", - Bio = "", - Icon = "" - }); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/Sources/EntityFramework/SkinEntity.cs b/Sources/EntityFramework/SkinEntity.cs new file mode 100644 index 0000000..e9650b3 --- /dev/null +++ b/Sources/EntityFramework/SkinEntity.cs @@ -0,0 +1,79 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EntityFramework +{ + public class SkinEntity //ONE TO MANY + { + + public string? Name { get; set; } + + public string? Description { get; set; } + + //public string Name + //{ + // get => name; + // private init + // { + // if (string.IsNullOrWhiteSpace(value)) + // { + // throw new ArgumentException("A skin must have a name"); + // } + // name = value; + // } + //} + //private readonly string name = null!; + + //public string Description + //{ + // get => description; + // set + // { + // if (string.IsNullOrWhiteSpace(value)) + // { + // description = ""; + // return; + // } + // description = value; + // } + //} + //private string description = ""; + + public string Icon { get; set; } = ""; + + + //public LargeImageEntity Image { get; set; } + public string? Image { get; set; } + + + public float Price { get; set; } + public ChampionEntity Champion { get; set; } + + + //public ChampionEntity Champion + //{ + // get => champion; + // private init + // { + // if (value == null) + // throw new ArgumentNullException("A skill can't have a null champion"); + // champion = value; + // } + //} + //private readonly ChampionEntity champion = null!; + + //public SkinEntity(string name, ChampionEntity champion, float price = 0.0f, string icon = "", string image = "", string description = "") + //{ + // Name = name; + // Champion = champion; + // //Champion.AddSkin(this); + // Price = price; + // Icon = icon; + // Image = new LargeImageEntity(image); + // Description = description; + //} + } +} diff --git a/Sources/EntityFramework/StubbedContext.cs b/Sources/EntityFramework/StubbedContext.cs new file mode 100644 index 0000000..833f0c7 --- /dev/null +++ b/Sources/EntityFramework/StubbedContext.cs @@ -0,0 +1,44 @@ +using Microsoft.EntityFrameworkCore; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EntityFramework +{ + public class StubbedContext : LoLDbContext + { + //protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) + //{ + // optionsBuilder.EnableSensitiveDataLogging(); + //} + + protected override void OnModelCreating(ModelBuilder modelBuilder) + { + base.OnModelCreating(modelBuilder); + + ChampionEntity corichard = new ChampionEntity {Name="Corichard", Bio="biobiobiobio", Icon="/a/a/a/a"}; + ChampionEntity pintrand = new ChampionEntity {Name = "Pintrand", Bio = "mimimimimim", Icon = "/small.png" }; + + //ChampionEntity corichard = new ChampionEntity() { Name = "Corichard", Bio = "biobiobiobio", Icon = "/a/a/a/a", Image = new LargeImageEntity { Base64 = "base" } }; + //ChampionEntity pintrand = new ChampionEntity { Name = "Pintrand", Bio = "mimimimimim", Icon = "/small.png", Image = new LargeImageEntity { Base64 = "base" } }; + + modelBuilder.Entity().HasData(corichard, pintrand); + + modelBuilder.Entity().HasData(new { Name = "aaaa", ChampionEntityForeignKey = "Corichard", Description = "So What", Icon="/Icon.png", Price=10.0f }, + new { Name = "skin", ChampionEntityForeignKey = "Corichard", Description = "So What", Icon = "/Icon.png", Price = 10.0f }, + new { Name = "bo", ChampionEntityForeignKey = "Corichard", Description = "So What", Icon = "/Icon.png", Price = 10.0f }, + new { Name = "Joulie", ChampionEntityForeignKey = "Corichard", Description = "So What", Icon = "/Icon.png", Price = 10.0f }, + new { Name = "Radiance", ChampionEntityForeignKey = "Corichard", Description = "So What", Icon = "/Icon.png", Price = 10.0f }, + new { Name = "void", ChampionEntityForeignKey = "Corichard", Description = "So What", Icon = "/Icon.png", Price = 10.0f }, + new { Name = "Radiance", ChampionEntityForeignKey = "Pintrand", Description = "So What", Icon = "/Icon.png", Price = 10.0f }, + new { Name = "void", ChampionEntityForeignKey = "Pintrand", Description = "So What", Icon = "/Icon.png", Price = 10.0f }, + new { Name = "DarkTheme", ChampionEntityForeignKey = "Pintrand", Description = "So What", Icon = "/Icon.png", Price = 10.0f }, + new { Name = "gold", ChampionEntityForeignKey = "Pintrand", Description = "So What", Icon = "/Icon.png", Price = 10.0f }, + new { Name = "ruby", ChampionEntityForeignKey = "Pintrand", Description = "So What", Icon = "/Icon.png", Price = 10.0f } + ); + } + + } +} diff --git a/Sources/EntityFramework/champion.db b/Sources/EntityFramework/champion.db deleted file mode 100644 index b0ff12d7b320d5866aecbae454397eb8c1f38820..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20480 zcmeI(J#W)M7zgn4OWeejdn}a|s-ROQkWd;YL(~l?G9qf4gw&vRK$hF2jYSfJ?MP*8 zzX>0JZ@`Ac!~_c)NJtDws0%`joI{;LDN5P!P_H$UPVh8bf#d%=0J7S#I{@UCf!AL zTT>a2V%r@Lip;k5Y}W4Z@~G8fjZS;l?wQTD&5GS^=klU%ueoFP_Sv?zfA`}0y5|>J z7zN(scs@b$Tl3JLEX=K`cQ$23ZxjULP5OhA@cD?ptvc>B@@MV&Vvdn4n>pPRR`gm; zIP1)|=s4E>9q%}BBfih@ffq)8@FKNS{CD%IV=g7;b2j@6H@yh5WTF(EZs7N)htcCf z5b~Q{n3h{KMMZy7TV|2Ej$@>DOZTi$FgUejp$K0SG_<0uX=z1Rwwb2tWV= z5V)oSw*+ZRuaqm*a@D99wX#tuJ7F|E;OUE6sa&e4d|v|nO89|*00bZa0SG_<0uX=z z1Rwwb2teRk3*@D(TzV29{{FAf*M$C{-{>d$fxhJp1Oy-e0SG_<0uX=z1Rwwb2tWV= zS4JSK$m^O`cZ2?FM&8ggbHxAM;0CHJ=Xv94ICLjDN!H`KJMyw(JlY%vo+``+xKZGr z#NYoF`i9V-^gI1RKhk%+fq(!6AOHafKmY;|fB*y_009U<;Hn8^rF9`r0w}A}hH#Ms g$f#0Y_>%&VbCS-hJOd!bBjW^sn3M83bN2rK8;u#~Z2$lO diff --git a/Sources/EntityFramework/champion.db-shm b/Sources/EntityFramework/champion.db-shm deleted file mode 100644 index fe9ac2845eca6fe6da8a63cd096d9cf9e24ece10..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeIuAr62r3