Я создал проект ASP.NET MVC 4 в Visual Studio 2010 с использованием Entity Framework 5 с включенными разрешениями. У меня есть несколько веб-конфигурационных файлов для разных сред (Debug, Staging, Release), которые будут определять разные подключения к базе данных в зависимости от среды. Как обрабатывать миграции с помощью команды Update-Database
из консоли диспетчера пакетов с несколькими конфигурационными файлами? Каждый раз, когда я запускаю эту команду, по умолчанию используется основная строка соединения Web.config. Спасибо за любую помощь заранее.Миграции Entity Framework с несколькими преобразованиями веб-конфигурации
ответ
Чтобы попытаться сохранить все как можно более простым способом, я работал над запуском миграции на своих удаленных серверах промежуточной постановки и производства, чтобы запустить следующую команду с консоли пакета (источник данных и пользователь/пропуск будут меняться в зависимости от того, какой сервер я хотел запустить миграцию против):
Update-Database -Verbose -ConnectionString "Data Source=ServerName;Initial Catalog=db;User Id=user;Password=pass;" -ConnectionProviderName "System.Data.SqlClient"
Это работает для меня до сих пор в случае, если кто-то смотрит. Спасибо всем за комментарии.
Чтобы перейти на другую среду, вы должны использовать Web config transform tool, я не думаю, что это ответственность за миграцию Entity Framework.
Преобразователи работают исправно. Я не понимаю, как обрабатывать миграции и обновлять базу данных в разных средах. – bbango
http://msdn.microsoft.com/en-us/data/jj618307.aspx
EF Code First Миграции поставляется с инструментом Migrate, который позволяет запустить «обновление» команд с помощью командной строки.
Я не совсем уверен, как вы настроились, но мы сделали что-то подобное, где мы разворачиваем код через наш CI-сервер (Jenkins). Затем я добавил шаг развертывания после запуска базы данных обновлений через командную строку.
Что хорошего в этом, вы также можете указать строки подключения.
Опять же, все зависит от того, как это вписывается в ваш процесс, вы даже можете использовать Nant для выполнения этого для вас.
Надеюсь, это поможет.
Этот инструмент migrate.exe может быть тем, что я ищу. Вопрос, который у меня для вас связан с процессом развертывания, заключается в том, как вы вернетесь назад, если сбой миграции, или что-то неожиданно? – bbango
Мы откатались бы традиционным способом. DBMigrations позволяет настроить таргетинг на сценарий миграции (если вам нужно откат), но я бы не стал полагаться на это для отката ваших производственных серверов. Вы также можете генерировать сценарий из миграций –
- 1. Миграции Entity Framework
- 2. Несколько Entity Framework миграции
- 3. Миграции MySQL Entity Framework
- 4. PipeLine с несколькими преобразованиями
- 5. Использование Entity Framework Migrate.exe с несколькими конфигурациями миграции?
- 6. Сброс Entity Framework 7 миграции
- 7. Миграции Entity Framework - управление ветвями
- 8. Ошибка миграции пакета Entity Framework
- 9. Entity Framework с несколькими edmx
- 10. Миграции Entity Framework с другой базой данных
- 11. Создание индексов с Entity Framework 6 Миграции
- 12. Доля значений между несколькими преобразованиями?
- 13. Откат миграции Entity Framework в C#
- 14. Entity Framework Автоматические Миграции Существующие базы данных
- 15. Добавление операторов «GO» для миграции Entity Framework
- 16. Entity Framework - DbMigrator не выполняет классы миграции
- 17. Entity Framework Code Первый файл класса миграции
- 18. Ошибка структуры Entity Framework при выполнении миграции
- 19. Entity Framework Авто Миграции Первичный ключ
- 20. Кольцевые контекст и Entity Framework миграции
- 21. Entity Framework 4.3 Миграции перемещают существующие данные
- 22. Миграции данных Entity Framework для разных сред
- 23. Миграции Entity Framework - Семенной пробег, даже если нет миграции?
- 24. Проверить ожидающие миграции в Entity Framework?
- 25. Entity Framework 6 Миграции - Visual Studio 2015
- 26. Entity Framework применяет миграции во время выполнения
- 27. Entity Framework 7 Обновление DbContext после миграции
- 28. Entity Framework Миграции, которые не применяются вообще
- 29. Миграции Entity Framework - нарушение ограничений ссылочной целостности
- 30. Миграции интерфейсного модуля Entity Framework - застряли в начальной миграции
как вы развертываете свой код в различных средах? то есть. используя Visual Studio? CI Дженкинс? –
В настоящее время я использую параметр публикации в Visual Studio. – bbango
Я думал, что есть возможность обновить базу данных –