Пользовательская письменная миграция не запускается

Я хочу написать свой собственный скрипт миграции. Мой класс миграции:

using Microsoft.EntityFrameworkCore.Migrations;

namespace Foo.Migrations
{
    public class FooMigration : Migration
    {
        protected override void Up(MigrationBuilder migrationBuilder)
        {
          string script ="<some long script>"
            migrationBuilder.Sql(script);
        }
    }
}

Но когда я запускаю Update-Database, ничего не происходит...

1 ответ

Решение

Вам нужно указать DbContext, к которому относится миграция, и идентификатор вашей миграции, применив атрибуты к вашему классу миграции, как показано ниже:

[DbContext(typeof(MyDbContext))]
[Migration("MyCustomMigration")]
public class FooMigration : Migration
{
    protected override void Up(MigrationBuilder migrationBuilder)
    {
        string script = "<some long script>";
        migrationBuilder.Sql(script);
    }
}
Другие вопросы по тегам