Я смог заставить это работать без проблем. Вот что я сделал:
Сначала я установил .NET Core 2.1-Preview 2. После установки проверил версию:
dotnet --version
2.1.300-preview2-008533
Я тогда создал проект
mkdir testfm
cd testfm
dotnet new console
Установлены пакеты nuget
dotnet add package FluentMigrator
dotnet add package FluentMigrator.Runner
dotnet add package FluentMigrator.Runner.SQLite
dotnet add package Microsoft.Data.Sqlite
Установлен инструмент CLI
dotnet tool install -g FluentMigrator.DotNet.Cli
Создан класс миграции с именем Migration1.cs
using FluentMigrator;
namespace test
{
[Migration(201805041513)]
public class _201805041513_CriacaoTabelaPessoa : ForwardOnlyMigration
{
public override void Up()
{
Create.Table("Pessoa")
.InSchema("angularCore")
.WithColumn("Id").AsInt32().Identity()
.WithColumn("Nome").AsString(80)
.WithColumn("SobreNome").AsString(50)
.WithColumn("Email").AsString(50)
.WithColumn("IdTpoPessoa").AsInt16()
.WithColumn("IdEndereco").AsInt16();
}
}
}
Скомпилировал проект
dotnet build
Запустил миграцию из корневого каталога проекта
dotnet fm migrate -p sqlite -c "Источник данных = test.db" -a
"\ Bin \ Debug \ netcoreapp2.1 \ test.dll"
Затем я получил следующие сообщения.
Затем я подтвердил, что таблица была создана, просмотрев SqlLite DB
Чтобы запустить эту же миграцию на Sql Server 2016, вы должны выполнить:
dotnet fm migrate -p SqlServer2016 -c
"Сервер = SQLSERVERINSTANCE; UID = testfm; PWD = тест; Trusted_Connection = да, база = FluentMigrator"
-a ". \ bin \ Debug \ netcoreapp2.1 \ test.dll"