0

Я до сих пор не увенчался успехом при автоматической миграции для работы с репозиторией онлайн-кода Visual Studio, которая настроена на автоматическое развертывание в Azure.Миграции кода CodeFirst с Azure

Там есть аналогичный вопрос здесь, что без ответа: EntityFramework Automatic Migrations with Azure Git Deployment

Мой вопрос прямо сейчас, что базы данных рассинхронизации между локальной рабочей копии и Azure БД, поэтому, когда код развертывается успешно, приложение больше не функционирует, поскольку база данных не обновляется в соответствии с новыми классами.

Я пробовал несколько подходов:

  1. Webapi.config обновлен, чтобы включить Migrator.

    var migrator = new DbMigrator(new Configuration()); 
    migrator.Update(); 
    
  2. Web.Config Обновлено Включать Перенести до последней версии

    <add key="MigrateDatabaseToLatestVersion" value="true"/> 
    
  3. Миграции Конфигурация Обновлено Включение автоматического

    AutomaticMigrationsEnabled = true; 
    
  4. Publishing непосредственно из Visual Studio С помощью диспетчера Publish - Это все еще не выполняет обновления БД на сайте Azure. (Включая проверку опционной коробки для выполнения миграций)

Кому-нибудь удалось заставить это работать?

Редактировать: Я также пробовал это, безуспешно, в качестве развертывания развертывания почты, но не повезло. http://robertgreiner.com/2012/05/using-entity-framework-database-migrations-to-update-a-remote-database/

+0

Возможно, важно отметить, я изменил имя одного из моих классов, так что это возможно из-за проблемы предотвращения потери данных, но я добавил AutomaticMigrationDataLossAllowed = true; в файл Configuration.cs в каталоге миграции. – DiscontentDisciple

ответ

1

Я обнаружил, что я считаю первопричиной (Code Wise, Actual Root Cause - я идиот). Я настроил в web.config LocalDB Client, чтобы все миграции происходили с этой БД. Комментируя, что БД и позволяющая команде Update-Database в менеджере пакетов работать с AzureDB, правильно обновили базу данных на Azure.

Я все еще не совсем уверен, почему миграции не работают, но я подозреваю, что это связано с файлом Web.Config. Я развертываю с установленным по умолчанию DB, что-то, о чем Azure не знает (LocalDB).

Так что это хотя бы обход, хотя я исправляю настройки Web.Config для развертывания с правильным DB до Azure.

Смежные вопросы