From c370b8affb3533a852dc4c2e4df89e7ec0a72af5 Mon Sep 17 00:00:00 2001 From: Eric Fleming Date: Wed, 11 Sep 2019 08:39:54 -0400 Subject: [PATCH] Add missing migration (#298) --- ...0911011026_UpdateCatalogModels.Designer.cs | 252 ++++++++++++++++++ .../20190911011026_UpdateCatalogModels.cs | 128 +++++++++ .../Migrations/CatalogContextModelSnapshot.cs | 8 +- 3 files changed, 383 insertions(+), 5 deletions(-) create mode 100644 src/Infrastructure/Data/Migrations/20190911011026_UpdateCatalogModels.Designer.cs create mode 100644 src/Infrastructure/Data/Migrations/20190911011026_UpdateCatalogModels.cs diff --git a/src/Infrastructure/Data/Migrations/20190911011026_UpdateCatalogModels.Designer.cs b/src/Infrastructure/Data/Migrations/20190911011026_UpdateCatalogModels.Designer.cs new file mode 100644 index 0000000..4a56fb1 --- /dev/null +++ b/src/Infrastructure/Data/Migrations/20190911011026_UpdateCatalogModels.Designer.cs @@ -0,0 +1,252 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Microsoft.eShopWeb.Infrastructure.Data; + +namespace Microsoft.eShopWeb.Infrastructure.Data.Migrations +{ + [DbContext(typeof(CatalogContext))] + [Migration("20190911011026_UpdateCatalogModels")] + partial class UpdateCatalogModels + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "2.2.6-servicing-10079") + .HasAnnotation("Relational:MaxIdentifierLength", 128) + .HasAnnotation("Relational:Sequence:.catalog_brand_hilo", "'catalog_brand_hilo', '', '1', '10', '', '', 'Int64', 'False'") + .HasAnnotation("Relational:Sequence:.catalog_hilo", "'catalog_hilo', '', '1', '10', '', '', 'Int64', 'False'") + .HasAnnotation("Relational:Sequence:.catalog_type_hilo", "'catalog_type_hilo', '', '1', '10', '', '', 'Int64', 'False'") + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.BasketAggregate.Basket", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("BuyerId"); + + b.HasKey("Id"); + + b.ToTable("Baskets"); + }); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.BasketAggregate.BasketItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("BasketId"); + + b.Property("CatalogItemId"); + + b.Property("Quantity"); + + b.Property("UnitPrice") + .HasColumnType("decimal(18,2)"); + + b.HasKey("Id"); + + b.HasIndex("BasketId"); + + b.ToTable("BasketItems"); + }); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.CatalogBrand", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:HiLoSequenceName", "catalog_brand_hilo") + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.SequenceHiLo); + + b.Property("Brand") + .IsRequired() + .HasMaxLength(100); + + b.HasKey("Id"); + + b.ToTable("CatalogBrand"); + }); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.CatalogItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:HiLoSequenceName", "catalog_hilo") + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.SequenceHiLo); + + b.Property("CatalogBrandId"); + + b.Property("CatalogTypeId"); + + b.Property("Description"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50); + + b.Property("PictureUri"); + + b.Property("Price") + .HasColumnType("decimal(18,2)"); + + b.HasKey("Id"); + + b.HasIndex("CatalogBrandId"); + + b.HasIndex("CatalogTypeId"); + + b.ToTable("Catalog"); + }); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.CatalogType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:HiLoSequenceName", "catalog_type_hilo") + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.SequenceHiLo); + + b.Property("Type") + .IsRequired() + .HasMaxLength(100); + + b.HasKey("Id"); + + b.ToTable("CatalogType"); + }); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.Order", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("BuyerId"); + + b.Property("OrderDate"); + + b.HasKey("Id"); + + b.ToTable("Orders"); + }); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.OrderItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("OrderId"); + + b.Property("UnitPrice") + .HasColumnType("decimal(18,2)"); + + b.Property("Units"); + + b.HasKey("Id"); + + b.HasIndex("OrderId"); + + b.ToTable("OrderItems"); + }); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.BasketAggregate.BasketItem", b => + { + b.HasOne("Microsoft.eShopWeb.ApplicationCore.Entities.BasketAggregate.Basket") + .WithMany("Items") + .HasForeignKey("BasketId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.CatalogItem", b => + { + b.HasOne("Microsoft.eShopWeb.ApplicationCore.Entities.CatalogBrand", "CatalogBrand") + .WithMany() + .HasForeignKey("CatalogBrandId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Microsoft.eShopWeb.ApplicationCore.Entities.CatalogType", "CatalogType") + .WithMany() + .HasForeignKey("CatalogTypeId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.Order", b => + { + b.OwnsOne("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.Address", "ShipToAddress", b1 => + { + b1.Property("OrderId") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b1.Property("City") + .IsRequired() + .HasMaxLength(100); + + b1.Property("Country") + .IsRequired() + .HasMaxLength(90); + + b1.Property("State") + .HasMaxLength(60); + + b1.Property("Street") + .IsRequired() + .HasMaxLength(180); + + b1.Property("ZipCode") + .IsRequired() + .HasMaxLength(18); + + b1.HasKey("OrderId"); + + b1.ToTable("Orders"); + + b1.HasOne("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.Order") + .WithOne("ShipToAddress") + .HasForeignKey("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.Address", "OrderId") + .OnDelete(DeleteBehavior.Cascade); + }); + }); + + modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.OrderItem", b => + { + b.HasOne("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.Order") + .WithMany("OrderItems") + .HasForeignKey("OrderId"); + + b.OwnsOne("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.CatalogItemOrdered", "ItemOrdered", b1 => + { + b1.Property("OrderItemId") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b1.Property("CatalogItemId"); + + b1.Property("PictureUri"); + + b1.Property("ProductName") + .IsRequired() + .HasMaxLength(50); + + b1.HasKey("OrderItemId"); + + b1.ToTable("OrderItems"); + + b1.HasOne("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.OrderItem") + .WithOne("ItemOrdered") + .HasForeignKey("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.CatalogItemOrdered", "OrderItemId") + .OnDelete(DeleteBehavior.Cascade); + }); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/src/Infrastructure/Data/Migrations/20190911011026_UpdateCatalogModels.cs b/src/Infrastructure/Data/Migrations/20190911011026_UpdateCatalogModels.cs new file mode 100644 index 0000000..6b70115 --- /dev/null +++ b/src/Infrastructure/Data/Migrations/20190911011026_UpdateCatalogModels.cs @@ -0,0 +1,128 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +namespace Microsoft.eShopWeb.Infrastructure.Data.Migrations +{ + public partial class UpdateCatalogModels : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_Catalog_CatalogBrands_CatalogBrandId", + table: "Catalog"); + + migrationBuilder.DropForeignKey( + name: "FK_Catalog_CatalogTypes_CatalogTypeId", + table: "Catalog"); + + migrationBuilder.DropPrimaryKey( + name: "PK_CatalogTypes", + table: "CatalogTypes"); + + migrationBuilder.DropPrimaryKey( + name: "PK_CatalogBrands", + table: "CatalogBrands"); + + migrationBuilder.RenameTable( + name: "CatalogTypes", + newName: "CatalogType"); + + migrationBuilder.RenameTable( + name: "CatalogBrands", + newName: "CatalogBrand"); + + migrationBuilder.AlterColumn( + name: "BuyerId", + table: "Baskets", + nullable: true, + oldClrType: typeof(string), + oldMaxLength: 20); + + migrationBuilder.AddPrimaryKey( + name: "PK_CatalogType", + table: "CatalogType", + column: "Id"); + + migrationBuilder.AddPrimaryKey( + name: "PK_CatalogBrand", + table: "CatalogBrand", + column: "Id"); + + migrationBuilder.AddForeignKey( + name: "FK_Catalog_CatalogBrand_CatalogBrandId", + table: "Catalog", + column: "CatalogBrandId", + principalTable: "CatalogBrand", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_Catalog_CatalogType_CatalogTypeId", + table: "Catalog", + column: "CatalogTypeId", + principalTable: "CatalogType", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_Catalog_CatalogBrand_CatalogBrandId", + table: "Catalog"); + + migrationBuilder.DropForeignKey( + name: "FK_Catalog_CatalogType_CatalogTypeId", + table: "Catalog"); + + migrationBuilder.DropPrimaryKey( + name: "PK_CatalogType", + table: "CatalogType"); + + migrationBuilder.DropPrimaryKey( + name: "PK_CatalogBrand", + table: "CatalogBrand"); + + migrationBuilder.RenameTable( + name: "CatalogType", + newName: "CatalogTypes"); + + migrationBuilder.RenameTable( + name: "CatalogBrand", + newName: "CatalogBrands"); + + migrationBuilder.AlterColumn( + name: "BuyerId", + table: "Baskets", + maxLength: 20, + nullable: false, + oldClrType: typeof(string), + oldNullable: true); + + migrationBuilder.AddPrimaryKey( + name: "PK_CatalogTypes", + table: "CatalogTypes", + column: "Id"); + + migrationBuilder.AddPrimaryKey( + name: "PK_CatalogBrands", + table: "CatalogBrands", + column: "Id"); + + migrationBuilder.AddForeignKey( + name: "FK_Catalog_CatalogBrands_CatalogBrandId", + table: "Catalog", + column: "CatalogBrandId", + principalTable: "CatalogBrands", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_Catalog_CatalogTypes_CatalogTypeId", + table: "Catalog", + column: "CatalogTypeId", + principalTable: "CatalogTypes", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + } +} diff --git a/src/Infrastructure/Data/Migrations/CatalogContextModelSnapshot.cs b/src/Infrastructure/Data/Migrations/CatalogContextModelSnapshot.cs index 7171f46..8a678ff 100644 --- a/src/Infrastructure/Data/Migrations/CatalogContextModelSnapshot.cs +++ b/src/Infrastructure/Data/Migrations/CatalogContextModelSnapshot.cs @@ -28,9 +28,7 @@ namespace Microsoft.eShopWeb.Infrastructure.Data.Migrations .ValueGeneratedOnAdd() .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - b.Property("BuyerId") - .IsRequired() - .HasMaxLength(20); + b.Property("BuyerId"); b.HasKey("Id"); @@ -72,7 +70,7 @@ namespace Microsoft.eShopWeb.Infrastructure.Data.Migrations b.HasKey("Id"); - b.ToTable("CatalogBrands"); + b.ToTable("CatalogBrand"); }); modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.CatalogItem", b => @@ -119,7 +117,7 @@ namespace Microsoft.eShopWeb.Infrastructure.Data.Migrations b.HasKey("Id"); - b.ToTable("CatalogTypes"); + b.ToTable("CatalogType"); }); modelBuilder.Entity("Microsoft.eShopWeb.ApplicationCore.Entities.OrderAggregate.Order", b =>