2

В коде EF сначала я хочу удалить один столбец из одной таблицы &, а затем удалить другую таблицу.Удалить таблицу из EF CodeFirst migration

После удаления одного столбца из файла класса автоматически создается один файл миграции.

Но как удалить таблицу.

какую команду необходимо уволить? Нужно ли мне удалять полный файл класса & также удалить следующую строку из Контекстного файла?

public DbSet<TableClassName> TableClassNameSet { get; set; } 

Используется, добавляю команду «TableClassName» миграции.

Так что лучший способ удалить стол?

ответ

0

Чтобы удалить стол, вы можете использовать DropTable("YourTable") в методе Down() вашего DBMigration класса.

Также рассмотрите следующую ссылку, чтобы узнать больше о том, как настроить перенос.

https://msdn.microsoft.com/en-au/data/jj591621.aspx#customizing

+0

Использование DropTable верное, но, вероятно, лучше настроить модель. Также возникает вопрос об удалении таблицы, не отменяющей миграцию. Вниз() предназначен для изменения последней миграции. Поэтому, по моему мнению, код должен быть в Up() в этом случае. –

+0

@MikaelEliasson Да, спасибо. Готово :) –

3

Если вы только что сделали изменения в последней миграции, вы можете rollback, что миграция. В противном случае просто настройте свои модели, и изменения будут отобраны в следующей миграции. Чтобы удалить таблицу, просто удалите соответствующий DbSet<MyClass> и любые ссылки на этот класс в других частях вашей модели, и EF автоматически добавит DropTable к миграции. Если вы больше не используете класс для целей, не связанных с Entity Framework, его можно удалить.

Смежные вопросы