Сначала я работал над кодом проекта. net core 3. На этом этапе я добавил 2 столбца в мои таблицы. Затем я сделал дополнение миграции к решению с помощью этого кода (CLI).
dotnet ef --startup-project ../MyApi.Api migrations add actorInfomart
Моя миграция вернула следующее:
public partial class actorInfomart : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<bool>(
name: "IsSeries",
schema: "film",
table: "Movie",
nullable: false,
defaultValue: false);
migrationBuilder.AddColumn<string>(
name: "ExtInfo",
schema: "act",
table: "Actor",
maxLength: 100,
nullable: true);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "IsSeries",
schema: "film",
table: "Movie");
migrationBuilder.DropColumn(
name: "ExtInfo",
schema: "act",
table: "Actor");
}
}
Кажется правильным. Проблема приходит сюда. Когда я попытался обновить миграцию, я получил эту ошибку:
There is already an object named 'Actor' in the database.
Моя миграция пытается создать новую таблицу в моей базе данных. Но в миграции нет ничего для этого. Вот моя команда CLI обновления миграции.
dotnet ef --startup-project ../MyApi.Api database update actorInfomart
В терминале (я использую Ma c) пишет
info: Microsoft.EntityFrameworkCore.Migrations[20402]
Applying migration '20191231100058_Initial'.
Applying migration '20191231100058_Initial'.
Как применить последнюю миграцию? У меня есть 10 миграций между первым и последним. Это моя первая проблема с миграциями.