2013-06-11 1 views
5

Контекст: У меня есть решение ASP.NET MVC4, развернутое в Azure.
Моя база данных MSSQL Server также находится в Azure.Использование базы данных обновлений в EF Миграции при развертывании в Azure

я в настоящее время развертывания так:

  1. В web.config я изменить строку подключения из локальной базы данных (SDF) в лазурной базе данных (connectionString="Server=tcp:.....database.windows.net, ...")

  2. правой кнопкой мыши на имени проекта (Visual Studio), а затем "Опубликовать"

Итак, мой вопрос:
Как использовать команду Update-database в консоли диспетчера пакетов?

Это так?

  1. же шаг # 1 из выше
  2. Run Update-Database

Я хочу быть уверен в этом. Кроме того, я думаю, я должен добавить исключение IP-адреса брандмауэра из Azure перед запуском шага # 2

ответ

7

Да, вы правы. По крайней мере, как это работает для меня:

  • Включение правила брандмауэра для текущего IP-адреса в лазури
  • Обновление строка подключения web.config в соответствии с Azure строки conneciton базы данных.
  • Run Update-Database в пакет консоли диспетчера

С другой стороны, из-за вашей ситуации («Я хочу быть уверен, что об этом») я рекомендую дублировать базу данных в Azure и протестировать эти шаги с этой резервной копией.

Надеюсь, это поможет.

EDIT из-за комментарий:

Проверьте это: Triggering EF migration at application startup by code

+0

Есть ли программный способ сделать обновление? Как в global.asax с Application_Start. Так что я продолжаю просто развертывать из VS (и ничего больше от VS) – sports

+2

Проверьте это: [Triggering EF migration при запуске приложения по коду] (http://stackoverflow.com/questions/8508280/triggering-ef-migrationat -application-startup-by-code) - комментарий [предложил] (http://stackoverflow.com/review/spected-edits/2306264) анонимным пользователем –

+1

Это был мой комментарий, но я забыл войти в систему, чтобы ответить: S – Vic

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

  • Нет связанных вопросов^_^