gpt4 book ai didi

c# - 在不部署数据库属性的情况下通过代码部署 dacpac

转载 作者:行者123 更新时间:2023-11-30 16:09:02 26 4
gpt4 key购买 nike

我有一个 dacpac 文件,我正在使用 DacServices 库通过应用程序进行部署。我有以下代码可以做到这一点:

var dp = DacPackage.Load(dacpacPath);
var dbDeployOptions = new DacDeployOptions
{
BlockOnPossibleDataLoss = false
};
var dbServices = new DacServices(WebConfigHelper.GetDbConnectionString(webConfigPath));
dbServices.Deploy(dp, WebConfigHelper.GetDbName(webConfigPath), true, dbDeployOptions);

问题是,使用此代码,目标数据库总是将其恢复模型更改为“完整”,这是在 SSDT 数据库项目(生成 dacpac)中设置的。

我们部署的各种目标数据库使用各种数据库属性,我们不知道目标数据库的恢复模型。有些使用简单,有些使用完整 - 我们不想更改它。

我如何更改此代码以使其不对目标数据库属性进行任何更改?我已经尝试取消选中数据库项目中的“部署数据库属性”设置,但上面的代码似乎覆盖了它。

最佳答案

DacDeployOptions 类包含一个 ScriptDatabaseOptions bool 值,可以将其设置为 false 以保留现有数据库设置或对新数据库使用默认值。

关于c# - 在不部署数据库属性的情况下通过代码部署 dacpac,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28236847/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com