// // Copyright (c) 2023 Timothy Schenk. Subject to the GNU AGPL Version 3 License. using Microsoft.EntityFrameworkCore.Migrations; #nullable disable namespace Server.DB.Migrations; /// public partial class SwitchToDataAnnotations : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.DropForeignKey( name: "FK_Characters_Accounts_AccountId", table: "Characters"); migrationBuilder.DropForeignKey( name: "FK_Characters_Guild_GuildId", table: "Characters"); migrationBuilder.DropForeignKey( name: "FK_GuildMember_Characters_CharacterId", table: "GuildMember"); migrationBuilder.DropForeignKey( name: "FK_GuildMember_Guild_GuildId", table: "GuildMember"); migrationBuilder.DropIndex( name: "IX_Characters_Name", table: "Characters"); migrationBuilder.DropColumn( name: "ServerId", table: "Characters"); migrationBuilder.AlterColumn( name: "GuildId", table: "GuildMember", type: "uuid", nullable: true, oldClrType: typeof(Guid), oldType: "uuid"); migrationBuilder.AlterColumn( name: "CharacterId", table: "GuildMember", type: "uuid", nullable: true, oldClrType: typeof(Guid), oldType: "uuid"); migrationBuilder.AlterColumn( name: "Name", table: "Characters", type: "text", nullable: true, oldClrType: typeof(string), oldType: "varchar(20)", oldNullable: true); migrationBuilder.AlterColumn( name: "GuildId", table: "Characters", type: "uuid", nullable: true, oldClrType: typeof(Guid), oldType: "uuid"); migrationBuilder.AlterColumn( name: "AccountId", table: "Characters", type: "uuid", nullable: true, oldClrType: typeof(Guid), oldType: "uuid"); migrationBuilder.CreateIndex( name: "IX_Accounts_Id", table: "Accounts", column: "Id", unique: true); migrationBuilder.AddForeignKey( name: "FK_Characters_Accounts_AccountId", table: "Characters", column: "AccountId", principalTable: "Accounts", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_Characters_Guild_GuildId", table: "Characters", column: "GuildId", principalTable: "Guild", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_GuildMember_Characters_CharacterId", table: "GuildMember", column: "CharacterId", principalTable: "Characters", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_GuildMember_Guild_GuildId", table: "GuildMember", column: "GuildId", principalTable: "Guild", principalColumn: "Id"); } /// protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropForeignKey( name: "FK_Characters_Accounts_AccountId", table: "Characters"); migrationBuilder.DropForeignKey( name: "FK_Characters_Guild_GuildId", table: "Characters"); migrationBuilder.DropForeignKey( name: "FK_GuildMember_Characters_CharacterId", table: "GuildMember"); migrationBuilder.DropForeignKey( name: "FK_GuildMember_Guild_GuildId", table: "GuildMember"); migrationBuilder.DropIndex( name: "IX_Accounts_Id", table: "Accounts"); migrationBuilder.AlterColumn( name: "GuildId", table: "GuildMember", type: "uuid", nullable: false, defaultValue: new Guid("00000000-0000-0000-0000-000000000000"), oldClrType: typeof(Guid), oldType: "uuid", oldNullable: true); migrationBuilder.AlterColumn( name: "CharacterId", table: "GuildMember", type: "uuid", nullable: false, defaultValue: new Guid("00000000-0000-0000-0000-000000000000"), oldClrType: typeof(Guid), oldType: "uuid", oldNullable: true); migrationBuilder.AlterColumn( name: "Name", table: "Characters", type: "varchar(20)", nullable: true, oldClrType: typeof(string), oldType: "text", oldNullable: true); migrationBuilder.AlterColumn( name: "GuildId", table: "Characters", type: "uuid", nullable: false, defaultValue: new Guid("00000000-0000-0000-0000-000000000000"), oldClrType: typeof(Guid), oldType: "uuid", oldNullable: true); migrationBuilder.AlterColumn( name: "AccountId", table: "Characters", type: "uuid", nullable: false, defaultValue: new Guid("00000000-0000-0000-0000-000000000000"), oldClrType: typeof(Guid), oldType: "uuid", oldNullable: true); migrationBuilder.AddColumn( name: "ServerId", table: "Characters", type: "smallint", nullable: false, defaultValue: (byte)0); migrationBuilder.CreateIndex( name: "IX_Characters_Name", table: "Characters", column: "Name", unique: true); migrationBuilder.AddForeignKey( name: "FK_Characters_Accounts_AccountId", table: "Characters", column: "AccountId", principalTable: "Accounts", principalColumn: "Id", onDelete: ReferentialAction.Cascade); migrationBuilder.AddForeignKey( name: "FK_Characters_Guild_GuildId", table: "Characters", column: "GuildId", principalTable: "Guild", principalColumn: "Id", onDelete: ReferentialAction.Cascade); migrationBuilder.AddForeignKey( name: "FK_GuildMember_Characters_CharacterId", table: "GuildMember", column: "CharacterId", principalTable: "Characters", principalColumn: "Id", onDelete: ReferentialAction.Cascade); migrationBuilder.AddForeignKey( name: "FK_GuildMember_Guild_GuildId", table: "GuildMember", column: "GuildId", principalTable: "Guild", principalColumn: "Id", onDelete: ReferentialAction.Cascade); } }