2

Я успешно создан файл миграции с использованием библиотеки классов .NET Core, с помощью команды: dotnet ef --startup-project ../Project.Web migrations add Init.NET Entity Framework Жила - путь миграции --output-Dir

Потому что я зарегистрировал свой контекст БД в другом слое, (веб-слой), и иметь библиотеку классов, я должен настроить мой проект запуска на Project.Web.

После создания моей первоначальной миграции это выглядит примерно так:

enter image description here

Но сейчас я хотел бы переместить папку миграции Project.Data/Migrations в Project.Data/Database/Migrations

Я попытался с помощью выходного-Dir параметра :

dotnet ef --startup-project ../Project.Web --output-dir Database migrations add Init 

Но затем я получаю:

DotNet: Непризнанный опция '--output-Dir'

Запуск (в другом проекте, бизнес-слой)

public static IServiceCollection InjectBusinessContext(this IServiceCollection services, string connectionString) 
{ 
    services.AddEntityFrameworkSqlServer().AddDbContext<ProjectContext>((serviceProvider, options) => options.UseSqlServer(connectionString, b => b.MigrationsAssembly("Database")).UseInternalServiceProvider(serviceProvider)); 

    return services; 
} 

Контекст (уровень данных)

public class ProjectContext : DbContext 
{ 
    public ProjectContext(DbContextOptions<ProjectContext> options) : base(options) 
    { 
    } 

    public DbSet<Account> Account { get; set; } 
} 

ответ

2

Just m (и, возможно, изменить пространство имен классов). Новые миграции последуют примеру предыдущей миграции. (Тоже для моментального снимка модели.) Да, это потрясающе. ;)

+0

То есть .. Удивительный. Приветствия. – Reft