Функция обновления базы данных не работает в диалоговом окне «Публикация в Интернете» в Visual Studio 2012

Я разрабатываю приложение веб-форм ASP.NET в Visual Studio 2012. Я использую диалоговое окно веб-развертывания и публикации в Интернете для развертывания приложения. Я пытаюсь развернуть схему базы данных, используя функцию обновления базы данных. Я ввел строку подключения, указывающую на удаленный SQL Server. Если я нажму кнопку «Проверить соединение», Visual Studio скажет, что тестовое соединение выполнено успешно.

введите здесь описание изображения

Затем я перехожу на вкладку «Предварительный просмотр» и нажимаю ссылку «Предварительный просмотр базы данных».

введите здесь описание изображения

И в открывшемся окне у меня есть сообщение

Сбой задачи веб-развертывания. (Не удалось сгенерировать сценарий развертывания. Не удалось подключиться к целевому серверу. Дополнительные сведения см. по адресу: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_EXECUTING_METHOD.)

Другие файлы проекта развертываются нормально. Я могу подключиться к SQL Server с помощью службы управления SQL Server. Но почему база данных не может быть обновлена? Я попытался отключить брандмауэр сервера - безуспешно.

  • Visual Studio Professional 2012
  • SQL Server 2012
  • Веб-развертывание 3.0

Обновить

Все работает нормально, если я использую аутентификацию SQL Server с именем входа sa вместо аутентификации Windows в строке подключения для DatabaseEntitiesRaw. Но проверка подлинности Windows отлично работает для SSMS, и я хочу использовать ее, поскольку развертываю только с компьютеров в домене моей компании. Правда ли, что dbDacFx не работает с проверкой подлинности Windows?


person Mikhail    schedule 30.08.2012    source источник
comment
Что произойдет, если вы просто развернете вместо предварительного просмотра?   -  person Andrew Clear    schedule 30.08.2012
comment
@aclear16 Та же ошибка в окне вывода: 2>C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets(4377,5): Error ERROR_EXECUTING_METHOD: Web задача развертывания не удалась. (Не удалось развернуть пакет. Не удалось подключиться к целевому серверу...   -  person Mikhail    schedule 30.08.2012
comment
Вероятно, вам нужно включить первую миграцию EF Code. Используйте ссылку рядом с треугольником с восклицательным знаком внутри.   -  person Andrew Clear    schedule 30.08.2012
comment
@ aclear16 aclear16 Я пытаюсь развернуть эту базу данных как автономную, без какой-либо связи с EF, поскольку я использую подход Data First.   -  person Mikhail    schedule 30.08.2012
comment
Хм, это странно. Можете ли вы написать мне по электронной почте, чтобы я мог более тесно сотрудничать с вами, чтобы решить эту проблему? Мой адрес электронной почты sayedha[at]{MicrosoftDOTcom}   -  person Sayed Ibrahim Hashimi    schedule 31.08.2012
comment
Проблема была в методе аутентификации. См. раздел обновления в начальном вопросе.   -  person Mikhail    schedule 31.08.2012
comment
Вы не можете использовать проверку подлинности Windows, поскольку она проходит через MSDeploy и службу веб-управления.   -  person Sayed Ibrahim Hashimi    schedule 14.03.2013


Ответы (1)


Сценарий развертывания запускается от пользователя AUTHORITY\LOCAL SERVICE, поэтому вам необходимо добавить этого пользователя на сервер SQL. Не забудьте добавить роль db_owner для пользователя.

person Raiden    schedule 03.04.2013