запускаться по умолчанию при запуске - PullRequest
0 голосов
/ 16 января 2019

Я работаю с тестовым проектом и пытаюсь обернуться вокруг миграции.

Я создал базу данных с именем: AngularASPNETCore2WebApiAuth Затем при запуске я добавляю конфигурацию в базу данных и указываю на сборку миграции:

services.AddDbContext<ApplicationDbContext>(options =>
      options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"),
          b => b.MigrationsAssembly("AngularASPNETCore2WebApiAuth")));

Когда я запускаю тестовый проект и получаю сообщение об ошибке:

System.Data.SqlClient.SqlException: 'Неверное имя объекта' AspNetUsers '.'

Тогда у меня сложилось впечатление, что я предоставил MigrationsAssembly, чтобы можно было запускать миграции при запуске проекта.

Я знаю, что могу обновить свою базу данных через командную строку, используя команду Update-Database.

Но почему я должен предоставлять сборку для миграций при запуске, если они не запускаются приложением по умолчанию. Как я могу запустить миграции по умолчанию при запуске?

1 Ответ

0 голосов
/ 16 января 2019

Настройка MigrationsAssembly просто сообщает контексту, где найти сборку миграций, вам все равно нужно подробно запускать ее (много раз вы не хотите запускать миграции каждый раз, когда запускаете приложение). Вам нужно позвонить

myDbContext.Database.Migrate();

Для выполнения миграций.

https://docs.microsoft.com/en-us/ef/core/managing-schemas/migrations/#apply-migrations-at-runtime

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...