SSDTは、データ層アプリケーションフレームワーク(DacFXとも呼ばれます)と呼ばれるライブラリによって強化されています。 DacFXはパブリックAPIで、dacpacファイルを抽出して公開することができます。あなたは、ディレクトリ内のVisual StudioまたはSQL Serverの下のプログラムファイルにこのような何かをDacFXのコピーを見つけることができます。
- C:\プログラムファイル(x86の)\のMicrosoft Visual Studioの14.0 \ Common7 \ IDE \拡張\マイクロソフト\ SQLDB \ DAC \ 130
- C:\プログラムファイル(x86の)\ Microsoft SQL Serverの\ 130 \ DAC \ binに
あなたがここにDacFXの最新バージョンをダウンロードすることができます https://www.microsoft.com/en-us/download/details.aspx?id=51672
注意をDacFXをインストールすると、それもneです上記のダウンロードページの「システム要件」のセクションにあるSqlSysClrTypesとSqlDomの依存関係をインストールするためのセッサリーです。あなたがそうのように、SqlPackage.exeを使用することができ、dacpacファイルを抽出し、公開することDacFXを使用するには
:
C:\Program Files (x86)\Microsoft SQL Server\130\DAC\bin\SqlPackage.exe /a:extract /scs:"Data Source=YOURSERVER;Initial Catalog=YOURDB;Integrated Security=true" /tf:C:\temp\yourdb.dacpac
C:\Program Files (x86)\Microsoft SQL Server\130\DAC\bin\SqlPackage.exe /a:publish /tcs:"Data Source=YOURSERVER;Initial Catalog=YOUROTHERDB;Integrated Security=true" /sf:C:\temp\yourdb.dacpac
代わりに、あなたはMicrosoft.SqlServerを使用してプログラムDacFXを使用することができます。 Dac APIのように: using Microsoft.SqlServer.Dac; class Program { static void Main(string[] args) { DacServices ds = new DacServices("Data Source=YOURSERVER;Initial Catalog=YOURDB;Integrated Security=true"); ds.Extract(@"C:\temp\yourdb.dacpac", "YOURDB", "AppName", new System.Version()); using (DacPackage dp = DacPackage.Load(@"C:\temp\yourdb.dacpac")) { ds.Deploy(dp, "YOUROTHERDB"); } } }
Microsoft.SqlServer.Dac APIを使用すると、私にとって最適です。ありがとうございました!!!! – Liv