.NET で SQL Server/Database のbacpac を取得する

質問されたので書いときます。

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 が幾つかあるので、それを読めるとこに置いとく必要あり。