using System; using Microsoft.EntityFrameworkCore.Migrations; #nullable disable namespace FileShare_EFCore.Migrations.SQLite { /// public partial class AddThumbnailMap : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.DropColumn( name: "thumbnail-path", table: "managed-file-record"); migrationBuilder.AddColumn( name: "thumbnail-id", table: "managed-file-record", type: "INTEGER", nullable: true); migrationBuilder.CreateTable( name: "managed-thumbnail-map", columns: table => new { id = table.Column(type: "INTEGER", nullable: false) .Annotation("Sqlite:Autoincrement", true), libraryrootid = table.Column(name: "library-root-id", type: "INTEGER", nullable: false), relativepath = table.Column(name: "relative-path", type: "TEXT", maxLength: 1024, nullable: false), contenttype = table.Column(name: "content-type", type: "TEXT", maxLength: 100, nullable: false), createdat = table.Column(name: "created-at", type: "TEXT", nullable: false), updatedat = table.Column(name: "updated-at", type: "TEXT", nullable: false) }, constraints: table => { table.PrimaryKey("pk-managed-thumbnail-map", x => x.id); table.ForeignKey( name: "FK_managed-thumbnail-map_managed-library-root_library-root-id", column: x => x.libraryrootid, principalTable: "managed-library-root", principalColumn: "id", onDelete: ReferentialAction.Cascade); }, comment: "文件缩略图映射记录"); migrationBuilder.CreateIndex( name: "idx-managed-file-record-thumbnail-id", table: "managed-file-record", column: "thumbnail-id"); migrationBuilder.CreateIndex( name: "idx-managed-thumbnail-map-relative-path", table: "managed-thumbnail-map", column: "relative-path", unique: true); migrationBuilder.CreateIndex( name: "idx-managed-thumbnail-map-root-id", table: "managed-thumbnail-map", column: "library-root-id"); migrationBuilder.AddForeignKey( name: "FK_managed-file-record_managed-thumbnail-map_thumbnail-id", table: "managed-file-record", column: "thumbnail-id", principalTable: "managed-thumbnail-map", principalColumn: "id", onDelete: ReferentialAction.SetNull); } /// protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropForeignKey( name: "FK_managed-file-record_managed-thumbnail-map_thumbnail-id", table: "managed-file-record"); migrationBuilder.DropTable( name: "managed-thumbnail-map"); migrationBuilder.DropIndex( name: "idx-managed-file-record-thumbnail-id", table: "managed-file-record"); migrationBuilder.DropColumn( name: "thumbnail-id", table: "managed-file-record"); migrationBuilder.AddColumn( name: "thumbnail-path", table: "managed-file-record", type: "TEXT", maxLength: 512, nullable: true); } } }