DacPackageExtensions.UpdateModel 方法

更新 DacPackage 中的模型,以便将当前模型替换为新模型。 在更新之前将验证该模型,如果遇到错误,将引发 DacServicesException。 如果调用方希望在出现警告和错误时进行阻止,他们必须通过调用 Validate() 并检查返回的消息中是否包括错误或警告来验证该模型。 注意:仅替换模型 - 所有其他项目(例如重构日志、部署前脚本、部署后脚本和参与者项目)不会发生更改。 如果其中任何项目依赖不再位于更新模型中的元素,则部署可能失败。 调用方负责确保这些项目与新模型一致。 Package API 可用于更新其他项目(例如重构日志和脚本)并使其与更新模型保持一致。 这些项目存储为包部分并由其 URI 标识。 可使用 GetParts() 检查包部分。 请参阅 Package API 以获取有关更新包部分的更多信息。

命名空间:  Microsoft.SqlServer.Dac
程序集:  Microsoft.SqlServer.Dac.Extensions(在 Microsoft.SqlServer.Dac.Extensions.dll 中)

语法

声明
<ExtensionAttribute> _
Public Shared Sub UpdateModel ( _
    dacPackage As DacPackage, _
    newModel As TSqlModel, _
    packageMetadata As PackageMetadata _
)
用法
Dim dacPackage As DacPackage 
Dim newModel As TSqlModel 
Dim packageMetadata As PackageMetadata 

dacPackage.UpdateModel(newModel, _
    packageMetadata)
public static void UpdateModel(
    this DacPackage dacPackage,
    TSqlModel newModel,
    PackageMetadata packageMetadata
)
[ExtensionAttribute]
public:
static void UpdateModel(
    DacPackage^ dacPackage, 
    TSqlModel^ newModel, 
    PackageMetadata^ packageMetadata
)
static member UpdateModel : 
        dacPackage:DacPackage * 
        newModel:TSqlModel * 
        packageMetadata:PackageMetadata -> unit
public static function UpdateModel(
    dacPackage : DacPackage, 
    newModel : TSqlModel, 
    packageMetadata : PackageMetadata
)

参数

用法说明

在 Visual Basic 和 C# 中,您可以对 DacPackage 类型的任何对象将此方法作为实例方法调用。在您使用实例方法语法调用此方法时,将忽略第一个参数。有关详细信息,请参阅b8020aae-374d-46a9-bcb7-8cc2390b93b6175ce3ff-9bbf-4e64-8421-faeb81a0bb51

异常

异常 条件
DacServicesException

如果 DacPackage 包含数据。

DacServicesException

如果在将模型保存到包中时出现任何错误,包括有关验证模型的错误。

DacServicesException

如果 dacPackage 未随 ReadWrite 一起加载。

ArgumentNullException

如果 dacPackage 或 newModel 参数为 Null。

请参阅

参考

DacPackageExtensions 类

Microsoft.SqlServer.Dac 命名空间