protected override void Up(MigrationBuilder migrationBuilder) { //Create Index on Site var siteEntityBuilder = new SiteEntityBuilder(migrationBuilder, ActiveDatabase); siteEntityBuilder.AddIndex("IX_Site", new [] { "TenantId", "Name" }, true); //Create Index on Role table var roleEntityBuilder = new RoleEntityBuilder(migrationBuilder, ActiveDatabase); roleEntityBuilder.AddIndex("IX_Role", new [] { "SiteId", "Name" }, true); //Create Index on Profile table var profileEntityBuilder = new ProfileEntityBuilder(migrationBuilder, ActiveDatabase); profileEntityBuilder.AddIndex("IX_Profile", new [] { "SiteId", "Name" }, true); //Create Index on File table var fileEntityBuilder = new FileEntityBuilder(migrationBuilder, ActiveDatabase); fileEntityBuilder.AddIndex("IX_File", new [] { "FolderId", "Name" }, true); //Add Columns to Notification table var notificationEntityBuilder = new NotificationEntityBuilder(migrationBuilder, ActiveDatabase); notificationEntityBuilder.AddStringColumn("FromDisplayName", 50, true); notificationEntityBuilder.AddStringColumn("FromEmail", 256, true); notificationEntityBuilder.AddStringColumn("ToDisplayName", 50, true); }
protected override void Down(MigrationBuilder migrationBuilder) { if (ActiveDatabase.Name != "Sqlite") { var fileEntityBuilder = new FileEntityBuilder(migrationBuilder, ActiveDatabase); fileEntityBuilder.DropIndex("IX_File"); fileEntityBuilder.AlterStringColumn("Name", 50); fileEntityBuilder.AddIndex("IX_File", new[] { "FolderId", "Name" }, true); } }
protected override void Up(MigrationBuilder migrationBuilder) { if (ActiveDatabase.Name != "Sqlite") { var fileEntityBuilder = new FileEntityBuilder(migrationBuilder, ActiveDatabase); // Drop the index is needed because the Name is already associated with IX_File fileEntityBuilder.DropForeignKey("FK_File_Folder"); fileEntityBuilder.DropIndex("IX_File"); fileEntityBuilder.AlterStringColumn("Name", 256); fileEntityBuilder.AddIndex("IX_File", new[] { "FolderId", "Name" }, true); fileEntityBuilder.AddForeignKey("FK_File_Folder"); } }