LANCommander/Migrations/20220907043213_AddCompanies.cs
2023-01-02 15:44:04 -06:00

142 lines
4.9 KiB
C#

using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace LANCommander.Migrations
{
public partial class AddCompanies : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<string>(
name: "Description",
table: "Games",
type: "TEXT",
nullable: false,
defaultValue: "");
migrationBuilder.AddColumn<Guid>(
name: "DeveloperId",
table: "Games",
type: "TEXT",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"));
migrationBuilder.AddColumn<Guid>(
name: "PublisherId",
table: "Games",
type: "TEXT",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"));
migrationBuilder.CreateTable(
name: "Companies",
columns: table => new
{
Id = table.Column<Guid>(type: "TEXT", nullable: false),
Name = table.Column<string>(type: "TEXT", nullable: false),
CreatedOn = table.Column<DateTime>(type: "TEXT", nullable: false),
CreatedById = table.Column<Guid>(type: "TEXT", nullable: false),
UpdatedOn = table.Column<DateTime>(type: "TEXT", nullable: false),
UpdatedById = table.Column<Guid>(type: "TEXT", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_Companies", x => x.Id);
});
migrationBuilder.CreateTable(
name: "GameTag",
columns: table => new
{
GamesId = table.Column<Guid>(type: "TEXT", nullable: false),
TagsId = table.Column<Guid>(type: "TEXT", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_GameTag", x => new { x.GamesId, x.TagsId });
table.ForeignKey(
name: "FK_GameTag_Games_GamesId",
column: x => x.GamesId,
principalTable: "Games",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_GameTag_Tags_TagsId",
column: x => x.TagsId,
principalTable: "Tags",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateIndex(
name: "IX_Games_DeveloperId",
table: "Games",
column: "DeveloperId");
migrationBuilder.CreateIndex(
name: "IX_Games_PublisherId",
table: "Games",
column: "PublisherId");
migrationBuilder.CreateIndex(
name: "IX_GameTag_TagsId",
table: "GameTag",
column: "TagsId");
migrationBuilder.AddForeignKey(
name: "FK_Games_Companies_DeveloperId",
table: "Games",
column: "DeveloperId",
principalTable: "Companies",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_Games_Companies_PublisherId",
table: "Games",
column: "PublisherId",
principalTable: "Companies",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Games_Companies_DeveloperId",
table: "Games");
migrationBuilder.DropForeignKey(
name: "FK_Games_Companies_PublisherId",
table: "Games");
migrationBuilder.DropTable(
name: "Companies");
migrationBuilder.DropTable(
name: "GameTag");
migrationBuilder.DropIndex(
name: "IX_Games_DeveloperId",
table: "Games");
migrationBuilder.DropIndex(
name: "IX_Games_PublisherId",
table: "Games");
migrationBuilder.DropColumn(
name: "Description",
table: "Games");
migrationBuilder.DropColumn(
name: "DeveloperId",
table: "Games");
migrationBuilder.DropColumn(
name: "PublisherId",
table: "Games");
}
}
}