Удаленный столбец и индекс продолжают повторно добавлять себя во время миграции - PullRequest
0 голосов
/ 27 сентября 2019

Я обнаружил столбец внешнего ключа в таблице, которому не соответствует запись в файле Models для этой сущности.Сначала попытался удалить его следующим образом (потому что на него нет ссылок в коде, как это не указано в файле Models)

        migrationBuilder.Sql("alter table mytable drop constraint if exists myfk");
        migrationBuilder.Sql("drop index if exists myindex");
        migrationBuilder.Sql("alter table mytable drop column if exists myunusedFKcolumn");

Это удалило его, но затем код начал ошибаться, как казалосьнужно, чтобы это отношение находилось в одном конкретном месте, где это отношение не имеет отношения.

Поэтому я повторно добавил его (вместе с отношением FK и индексом), и в следующей миграции попытался удалить его чисто, какэто (думая, что делать это способом EF было бы более чисто, чем непосредственно в базе данных):

        migrationBuilder.DropForeignKey(
            name: "myfk,
            schema: "myschema",
            table: "mytable");

        migrationBuilder.DropIndex(
            name: "myindex",
            schema: "myschema",
            table: "mytable");

        migrationBuilder.DropColumn(
            name: "myunusedFKcolumn",
            schema: "myschema",
            table: "mytable");

Но что бы я ни делал, миграции продолжают автоматически добавлять myfk и myindex обратно в следующую миграцию.Как избавиться от этого происходящего?

...