Заполнение данных с помощью HasData не работает в Visual Studio для Mac - PullRequest
0 голосов
/ 12 июня 2018

В Visual Studio для MacOS наблюдается странное поведение.Я недавно установил .NET Core 2.1 SDK, а затем обновил проект с 2.0 до 2.1.Я хотел опробовать новую функцию Data Seeding, которая позволяет нам помещать данные в сущность с помощью переопределения метода OnModelCreating.

modelBuilder.Entity<Role>().HasData(
            new Role { ID = 1, Name = "Administrator", RoleType = 0 },
            new Role { ID = 2, Name = "Application User", RoleType = 0 });

Изначально, что будет строить.Затем я открываю командную строку и набираю команду:

dotnet ef migration add v001

Результат «сборка не удалась».Затем, когда я иду в VS и строить, это не удается.Я перезапустил VS и могу повторять это снова и снова.Изначально проект строится без ошибок.Тогда только после попытки добавить миграцию EF появляется ошибка сборки.Завершение кода показывает метод HasData, и я, кажется, правильно его использую.Я подозреваю, что столкнулся с ошибкой инструментария, и я ценю любые рекомендации, как это обойти.

1 Ответ

0 голосов
/ 18 июня 2018

Проблема заключалась в том, что я не выполнил шаг миграции, который требуется при переходе с .NET Core 2.0 на 2.1:

Замените указанную версию пакета "Microsoft.AspNetCore.All" ссылкой на пакетссылка на версию «Microsoft.AspNetCore.App» без версии.Вам может потребоваться добавить зависимости, которые были удалены из «Microsoft.AspNetCore.All»

Это задокументировано здесь:

https://docs.microsoft.com/en-us/aspnet/core/migration/20_21?view=aspnetcore-2.1

...