Не удается развернуть DACPAC с помощью Azure Runbook Automation.

Я пытаюсь развернуть файл DACPAC с помощью Azure Runbook Automation, используя последнюю версию «Microsoft.SqlServer.Dac.dll», которая заархивирована, а затем загружена в виде модуля в учетную запись службы автоматизации Azure. Я могу правильно получить доступ к этому файлу DLL. Однако, когда я пытаюсь запустить приведенный ниже код, я получаю сообщение об ошибке:

Add-Type -Path "C:\Modules\User\Microsoft.SqlServer.Dac\Microsoft.SqlServer.Dac.dll"

$dacService = New-Object Microsoft.SqlServer.dac.dacservices("Server=tcp:xxxx.database.windows.net,1433;Initial Catalog=testdatabase;Persist Security Info=False;User ID=xxxxxx;Password=xxxxx@12345;")

$dacPackage = [Microsoft.SqlServer.Dac.DacPackage]::Load($env:TEMP + "\SQL.dacpac")

$dacService.deploy($dacPackage,"testdatabase",$true,$options,$null)

Я получаю следующую ошибку во 2-й строке -

New-Object: исключение, вызывающее «.ctor» с аргументом (-ами) «1»: «Тип ?> Initializer для« Microsoft.SqlServer.Dac.DacServices »вызвал исключение». At >line:98 char:15 + ... acService = New-Object >Microsoft.SqlServer.dac.dacservices("Server=tc ... + >~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Информация о категории: >InvalidOperation: (: ) [New-Object], MethodInvocationException + >FullyQualifiedErrorId: >ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand

Есть идеи, что может пойти не так? Тот же код отлично работает, когда я выполняю его на своем Powershell локально. Файл DACPAC создается с использованием Базы данных SQL Azure версии 12 в качестве целевой платформы. Кроме того, файл DLL является последним из SSMS 17.2.


person Pranav Jituri    schedule 16.08.2017    source источник
comment
Я думаю, что ваша строка подключения неверна... должно быть что-то вроде $dacServices = New-Object Microsoft.SqlServer.Dac.DacServices ("data source=" + $tagetServer + ";Database=" + $databaseName + "; Trusted_connection=true")   -  person Hackerman    schedule 16.08.2017
comment
@Hackerman - Нет. Все та же ошибка. Изменение строки подключения не должно иметь значения, потому что, как я уже сказал, тот же код отлично работает в локальной среде Powershell ISE.   -  person Pranav Jituri    schedule 16.08.2017
comment
Итак, запустив скрипт на локальном сервере и указав на базу данных Azure, все работает нормально...   -  person Hackerman    schedule 16.08.2017
comment
Ага. Только когда я копирую и вставляю код в Runbook Azure, он дает мне указанную выше ошибку.   -  person Pranav Jituri    schedule 16.08.2017
comment
@Hackerman - я уже искал. Только тогда я создал эту тему. Это странно, потому что тот же код отлично работает локально.   -  person Pranav Jituri    schedule 16.08.2017