I created some new tables and I noticed I didn't use the good naming convention for the ids.
So I did a new add-migration
with the new ids but when I try to update-database
I have the following error :
The constraint 'PK_dbo.DB_User_Type' is being referenced by table 'AspNetUsers', foreign key constraint 'FK_dbo.AspNetUsers_dbo.DB_User_Type_DB_User_Type_Id'. Could not drop constraint. See previous errors.
I don't understand because the script starts by dropping all constraints.
Could someone explain how to solve this error please?
I'm using the new approach code first from an existing database
from entity 6.1. Here is the Up
function
public override void Up()
{
DropForeignKey("dbo.DB_Company_Profile", "DB_Category_Id", "dbo.DB_Category");
DropForeignKey("dbo.DB_Category_Translation", "DB_Category_Id", "dbo.DB_Category");
DropForeignKey("dbo.DB_User_Type_Translation", "DB_User_Type_Id", "dbo.DB_User_Type");
DropForeignKey("dbo.DB_Company_Profile", "category_id", "dbo.DB_Category");
DropForeignKey("dbo.DB_Category_Translation", "category_id", "dbo.DB_Category");
DropForeignKey("dbo.AspNetUsers", "DB_User_Type_user_type_id", "dbo.DB_User_Type");
DropForeignKey("dbo.DB_User_Type_Translation", "user_type_id", "dbo.DB_User_Type");
DropIndex("dbo.DB_Company_Profile", new[] { "DB_Category_Id" });
DropIndex("dbo.DB_Category_Translation", new[] { "DB_Category_Id" });
DropIndex("dbo.DB_User_Type_Translation", new[] { "DB_User_Type_Id" });
DropColumn("dbo.DB_Company_Profile", "category_id");
DropColumn("dbo.DB_Category_Translation", "category_id");
DropColumn("dbo.DB_User_Type_Translation", "user_type_id");
RenameColumn(table: "dbo.AspNetUsers", name: "DB_User_Type_Id", newName: "DB_User_Type_user_type_id");
RenameColumn(table: "dbo.DB_Company_Profile", name: "DB_Category_Id", newName: "category_id");
RenameColumn(table: "dbo.DB_Category_Translation", name: "DB_Category_Id", newName: "category_id");
RenameColumn(table: "dbo.DB_User_Type_Translation", name: "DB_User_Type_Id", newName: "user_type_id");
RenameIndex(table: "dbo.AspNetUsers", name: "IX_DB_User_Type_Id", newName: "IX_DB_User_Type_user_type_id");
DropPrimaryKey("dbo.DB_Category");
DropPrimaryKey("dbo.DB_User_Type");
AddColumn("dbo.DB_Category", "category_id", c => c.Int(nullable: false, identity: true));
AddColumn("dbo.DB_User_Type", "user_type_id", c => c.Int(nullable: false, identity: true));
AlterColumn("dbo.DB_Company_Profile", "category_id", c => c.Int(nullable: false));
AlterColumn("dbo.DB_Category_Translation", "category_id", c => c.Int(nullable: false));
AlterColumn("dbo.DB_User_Type_Translation", "user_type_id", c => c.Int(nullable: false));
AddPrimaryKey("dbo.DB_Category", "category_id");
AddPrimaryKey("dbo.DB_User_Type", "user_type_id");
CreateIndex("dbo.DB_Company_Profile", "category_id");
CreateIndex("dbo.DB_Category_Translation", "category_id");
CreateIndex("dbo.DB_User_Type_Translation", "user_type_id");
AddForeignKey("dbo.DB_Company_Profile", "category_id", "dbo.DB_Category", "category_id", cascadeDelete: true);
AddForeignKey("dbo.DB_Category_Translation", "category_id", "dbo.DB_Category", "category_id", cascadeDelete: true);
AddForeignKey("dbo.DB_User_Type_Translation", "user_type_id", "dbo.DB_User_Type", "user_type_id", cascadeDelete: true);
AddForeignKey("dbo.AspNetUsers", "DB_User_Type_user_type_id", "dbo.DB_User_Type", "user_type_id");
DropColumn("dbo.DB_Category", "Id");
DropColumn("dbo.DB_User_Type", "Id");
}