Я пытаюсь добавить начальные миграции в мой проект, использующий EF Core + PostGRE SQL Driver
Моя структура проекта выглядит следующим образом:
.sln
|--
|
|-- Context(cslib)
|-- Controllers(cslib)
|-- AppRunner(console app), Startup
|--(...)
Где AppRunner имеет:
PackageReference Include = "Npgsql.EntityFrameworkCore.PostgreSQL" Version = "2.1.2"
Контекст содержит:
PackageReference Include = "Microsoft.EntityFrameworkCore "Version =" 2.1.1 "
Контроллеры имеют:
PackageReference Include =" Microsoft.EntityFrameworkCore "Version =" 2.1.1 "
Мой стартап:
services
.AddEntityFrameworkNpgsql()
.AddDbContext<Context>
(
o => o
.UseNpgsql(DbConnectionString)
)
.BuildServiceProvider();
И все работает нормально - приложение работает правильно, но когда я хочу выполнить
dotnet ef migrations add InitialCreate
в папке AppRunner, оно выдает
System.Reflection.TargetInvocationException: Исключение было сгенерировано целью вызова.---> System.IO.FileLoadException: не удалось загрузить файл или сборку 'Microsoft.EntityFrameworkCore, версия = 2.1.4.0, культура = нейтральная, PublicKeyToken = adb9793829ddae60'.Определение манифеста обнаруженной сборки не соответствует ссылке на сборку.(Исключение из HRESULT: 0x80131040) в Microsoft.EntityFrameworkCore.Design.OperationExecutor..ctor (Object reportHandler, IDictionary args) --- Конец внутренней трассировки стека исключений --- в System.RuntimeMethodHandle.InvokeMethod (Цель объекта, Object []аргументы, сигнатура sig, логический конструктор, логическое wrapExceptions) в System.Reflection.RuntimeConstructorInfo.Invoke (BindingFlags invokeAttr, связыватель Binder, параметры Object [], CultureInfo) в System.RuntimeType.CreateInstanceImpl (BindingFlags Binding, Binderrtt)args, CultureInfo culture, Object [] активацииAttributes) в Microsoft.EntityFrameworkCore.Tools.ReflectionOperationExecutor..ctor (сборка строк, запуск строки AsAsmbly, строковый projectDir, строковый dataDirectory, строковое rootNamespace, строковый язык) в Microsoft.EntityFrameworkCjectBol..CreateExecutor () в Microsoft.EntityFrameworkCore.Tools.Commands.MigrationsAddCommand.Execute () в Microsoft.DotNet.Cli.CommandLine.CommandLineApplication.Execute (String [] args) в Microsoft.EntityFrameworkCore.Tools.Program.Main (String [] args) Исключение было сгенерировано целью вызова.
Кто-нибудь знает, чтоможет вызвать это?