Entity Framework Code Первая миграция и обратный инжиниринг
Мы с коллегой пытались сначала дополнить существующую базу данных кодом структуры сущностей, и нам не повезло в достижении того, что нам нужно сделать.
Короче говоря, у нас есть существующая база данных, которая имеет тип пользователя InternetUser. Мы обновляем проект и пытаемся интегрировать код MembershipReboot. Этот код имеет концепцию (и сущность) UserAccount. Итак, мы решили связать эти два типа с внешним ключом в объекте InternetUser, который ссылается на первичный ключ (GUID) соответствующего объекта UserAccount.
Мы создали наши сущности, используя инфраструктуру сущностей Power Tools и реверс-инжиниринг. Затем мы вручную связали тип InternetUser с UserAccount в MembershipReboot, добавив свойство UserAccountId.
Сложность этой миграции обусловлена тем фактом, что некоторый хеширующий (криптографический) код в библиотеке MembershipReboot должен запускаться всякий раз, когда создается учетная запись пользователя. Я не совсем уверен, как это сделать в методе seed, используя код EF. Таким образом, это не просто случай запуска сценария SQL при заполнении. Некоторые C# должны быть запущены для создания пользователя с использованием MembershipReboot.
Если кто-то попытался сделать что-то подобное, я хотел бы услышать от них и как они решили проблему.