Включение миграции базы данных с 2 локальными базами данных - PullRequest
0 голосов
/ 09 июля 2019

У меня возникла проблема с использованием Database-Migrations в моем проекте asp.net mvc, потому что я использую 2 локальные базы данных. Теперь у меня есть 2 базы данных; 1, который был создан при запуске проекта для управления идентификацией пользователей, таких как пользователи, роли пользователей и т. Д. (Aspnet-IdentityTest-201 ~). Я включил-Миграции в этой базе данных, чтобы Seed () входил в нее администратор, и все работало нормально.

2-ая база данных была создана после этого с использованием подхода базы данных с первым кодом для хранения данных модели. Теперь мой вопрос, поскольку в моем проекте уже включена миграция (на 1-й БД), как мне включить миграцию и на 2-й БД? В настоящее время, когда я запускаю Update-Database, он нацелен на 'aspnet-IdentityTest-20190707071058'. Я хотел бы также иметь возможность запускать эту команду для моего IdentityTest.Models.TestDb (с включенной автоматической миграцией).

Я боюсь снова запустить «Enable-Migrations -ContextTypeName IdentityTest.Models.TestDb», так как в прошлый раз, когда я делал это, он удалил мой текущий файл config.cs, который включал мой Seed () для администраторов, и меня оставили с новым файлом конфигурации только для контекста TestDb. Проект также не удалось построить после этого

a busy cat

Может кто-нибудь посоветовать, если есть возможность для моих двух баз данных включить миграцию? Должны ли они использовать один и тот же файл migrations / config.cs? Если это невозможно, используйте сначала подход кода; Как заставить мой проект использовать aspnet-IdentityTest-201 ~ Db для хранения информации о модели вместо создания нового Db, как это было с IdentityTest.Models.TestDb?

Заранее спасибо!

1 Ответ

1 голос
/ 10 июля 2019

Сначала я выбрал решение, в котором успешно кодировал БД. Я изменил все вхождения моего имени БД и добавил суффикс 2db. Я создаю другое соединение и называю его {..} 2 с именем каталога {..} 2dbSecond. Затем я удаляю папку «Миграции». Я разбил свой контекстный файл на два контекста, и в каждый из них был включен DbSet <>.

напечатал: enable-migrations -projectname contosouniversitydal -contexttypename schoolcontext
в папке добавленных миграций, в configration.cs, добавили метод seed Add-Migration InitialCreateContext1 -ProjectName contosouniversitydal -configurationtypename configuration -connectionstring schoolcontext Обновление базы данных -проектное имя contosouniversitydal -configurationtypename configuration -connectionstringname schoolcontext

Затем я делаю то же самое для другого контекста.

Вы можете использовать https://coding.abel.nu/2012/03/ef-migrations-command-reference

Enable-Migrations имеет опцию -MigrationsDirectory, поэтому вы можете разделить две разные базы данных.

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