Найдите Sqlpackage.exe на клиентском компьютере для установки DACPAC
Я разрабатываю.Net-приложение, которое будет развертывать dacpac на клиентской машине. Для этого мне потребуется SqlPackage.exe для развертывания dacpac. Мне нужен абсолютный путь к SqlPackage.exe, чтобы приложение работало независимо от конфигурации компьютера клиента.
Можете ли вы помочь мне достичь этого.
Спасибо, Йогеш
2 ответа
Вы можете установить sqlpackage.exe
двумя способами:
- SSDT (Инструменты данных SQL Server): расположение будет
VS Install Directory\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\{SqlVersion}
, VS установить каталог:C:\Program Files (x86)\Microsoft Visual Studio {VsVersion}.0
- SQL Server Management Studio (SSMS) и MSI Dac Framework:
C:\Program Files (x86)\Microsoft SQL Server\{SqlVersion}\Dac\bin
SqlVersion
является 140
для SQL Server 2017, 130
для SQL Server 2016 и т. д.
VsVersion
является 14
для Visual Studio 2017
Подробнее в этом вопросе.
Найти sqlpackage
программно вы можете использовать библиотеку PowerShell TaskModuleSqlUtility. Либо запустить Invoke-DacpacDeployment
из сценария powershell (извините, не C#) или использовать Get-SqlPackageOnTargetMachine
функция для пути sqlpackage.exe.
Поиск тестов в github для образцов.
Вы также можете скачать с сайта microsoft doc
и проверьте свою версию sql и получите правильные инструкции