我正在开发一个在客户机上部署dacpac的.Net应用程序。为此,我需要SqlPackage.exe来部署dacpac。 我需要一个SqlPackage.exe的绝对路径来使我的应用程序工作,而不管客户端的机器配置如何。
你能帮助我实现这个目标。
谢谢, 约杰什
答案 0 :(得分:9)
您可以通过两种方式安装sqlpackage.exe
:
VS Install Directory\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\{SqlVersion}
,VS安装目录:C:\Program Files (x86)\Microsoft Visual Studio {VsVersion}.0
C:\Program Files (x86)\Microsoft SQL Server\{SqlVersion}\Dac\bin
SqlVersion
对于SQL Server 2017是140
,对于SQL Server 2016等是130
等。
VsVersion
为14
this question中的更多详情。
答案 1 :(得分:1)
要以编程方式查找sqlpackage
,可以使用TaskModuleSqlUtility powershell library。从powershell脚本运行Invoke-DacpacDeployment
(抱歉,不是C#),或者对sqlpackage.exe路径使用Get-SqlPackageOnTargetMachine
函数。
在github中搜索测试以获取样本。
答案 2 :(得分:0)
您还可以从Microsoft文档站点下载
并检查您的sql版本并获得正确的说明