Ошибка с DbSeed-Migration в WebApiBackend (netcore2) - PullRequest
0 голосов
/ 07 мая 2020

У меня есть бэкэнд WebApi со следующей структурой: enter image description here

В библиотеке базы данных у меня есть файл CSV. В классе DbSeeder.cs я хочу заполнить свою базу данных.

Структура CSV выглядит так:

DayOfWeek;Starter;MainCourse;Dessert;Price
Montag;Tagessuppe;Kaiserschmarrn mit Apfelmus;;4.50
Dienstag;;Cordon bleu mit Kartoffeln und Salat;Dessert;4.20
Mittwoch;Tagessuppe;Geschnetzeltes mit Erbsenreis;;4.90
Donnerstag;;Burger mit Wedges;Dessert;6.30
Freitag;Tagessuppe;Eiernockerl mit Salat;;3.90

Как видите, не каждое поле в этом файле имеет значение, но проблема не в этом. Я думаю, настоящая проблема в моем классе DbSeeder.cs. миграция, где я хочу вызвать этот метод DbSeeder.Seed (db).

public partial class Seed : Migration
    {
        FoodOrderBackendContext db;
        protected override void Up(MigrationBuilder migrationBuilder)
        {
            DbSeeder.Seed(db);
        }

        protected override void Down(MigrationBuilder migrationBuilder)
        {

        }
    }

Теперь, когда я хочу выполнить команду Update-Database, появляется следующая ошибка: enter image description here Кто-нибудь из вас знает, что может означать ошибка? Или решение.

ErrorText:

Версия инструментов EF Core '2.1.1-rtm-30846' старше, чем у среды выполнения '2.1.11-servicing-32099'. Обновите инструменты для получения последних функций и исправлений ошибок. Применение миграции '20200507182207_Seed'. System.NullReferenceException: ссылка на объект не установлена ​​на экземпляр объекта. в FoodOrderBackendDb.DbSeeder.Seed (FoodOrderBackendContext db) в C: \ Users \ floha \ Desktop \ Essensbestellungen \ Backend \ FoodOrderBackend \ FoodOrderBackendDb \ DbSeeder.cs: строка 13 в FoodOrderBackendDb \ DbSeeder. 1031 *: \ Users \ floha \ Desktop \ Essensbestellungen \ Backend \ FoodOrderBackend \ FoodOrderBackendDb \ Migrations \ 20200507182207_Seed.cs: строка 10 в Microsoft.EntityFrameworkCore.Migrations.Migration.BuildOperations (Actionwork 1 buildAction) at Microsoft.EntityFrameworkCore.Migrations.Migration.<.ctor>b__4_1() at Microsoft.EntityFrameworkCore.Internal.LazyRef 1.get .Migrations.Migration.get_UpOperations () в Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.GenerateU pSql (миграция миграции) в Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator. <> C__DisplayClass13_2.b__2 () в Microsoft.workEntity () в Microsoft.workEntity Migrations.Internal.Migrator.Migrate (String targetMigration) в Microsoft.EntityFrameworkCore.Design.Internal.MigrationsOperations.UpdateDatabase (String targetMigration, String contextType) в Microsoft.EntityFramework Core.Design.OperationExecutor.UpdateDatabase. <> C__DisplayClass0_1. <. Ctor> b__0 () в Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute (действие действие) Ссылка на объект не установлена ​​на экземпляр объекта.

...