質問されたので書いときます。
DacFx 使ってサクッと出来ますよ~。
NuGet Gallery | Microsoft.SqlServer.DacFx.x64 150.4384.2
var connstr = @"~"; var dac = new DacServices(connstr); dac.ExportBacpac(@"d:\TurorialDB.bacpac", "TutorialDB");
細かいオプション渡したい場合は、ドキュメント見てください。
ドキュメントは1年前のバージョンのようでちょっと古いですが、そんな大幅に変わってるとこは無さそう?
DacServices Class (Microsoft.SqlServer.Dac) | Microsoft Docs
注意点は .NET Core の DacFx は未だ正式提供されていないので、.NET Framework でお願いします。
※.NET Core のは Preview で提供されています。
NuGet Gallery | Microsoft.SqlServer.DACFx 150.4384.2-preview
これくらいなら PowerShell で書いてしまってもいいかもしれません。
アセンブリの参照だけ気を付けたらサクッと書けると思います。
※Microsoft.SqlServer.Dac.dll は依存してる dll が幾つかあるので、それを読めるとこに置いとく必要あり。