EF Core Migrations - как изменить предыдущие миграции?
======================================================

 У меня есть вопрос о редактировании файлов миграции в `EF Core` . 

 Пример: я создал 3 таблицы, используя отдельные миграции для каждой: `AddTable1` , `AddTable2` , `AddTable3` . 

 После этого через несколько дней я решил изменить тип столбца `status` в `Table1` на `int` а не на `string` . 

 После обновления `AddTable1` миграции `AddTable1` , удаления базы данных и выполнения команды `update-database` столбец все еще был определен со `string` типом. 

 Я заметил, что все файлы `.Designer.cs` все еще использовали `string` тип для столбца `status` несмотря на мое редактирование файла миграции `Table1` . 

 Я скопировал содержимое файла `AppDbContextModelSnapshot.cs` и вручную обновил все файлы `.Designer.cs` для всех миграций ( **примечание** : имя метода в файлах source и `.Designer.cs` различается). 

 И это помогло. Я уверен, что это не рекомендуемый способ использования миграций. 

 Мой вопрос: есть ли команда, которая будет делать то, что я сделал, - «сбросить» файлы «.Designer.cs»? 

 Если нет, как сделать один? :) 

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

 Если вы не применили миграцию или не поделились ею с товарищами по команде, вы можете удалить ее и заново создать эшафот: 

```
Remove-Migration
Add-Migration FixedUpMigration

```
  См. Документацию [EF Core Migrations](https://docs.microsoft.com/ef/core/managing-schemas/migrations/) для базового использования.