DacPackageExtensions Class

Definition

Provides extension methods to support manipulation of DacPackage objects. These extension methods work on an existing DacPackage

public static class DacPackageExtensions
type DacPackageExtensions = class
Public Module DacPackageExtensions
Inheritance
DacPackageExtensions

Methods

BuildPackage(Stream, TSqlModel, PackageMetadata)

Creates a package with the specified TSqlModel and saves it to the specified Stream.

BuildPackage(Stream, TSqlModel, PackageMetadata, PackageOptions)

Creates a package with the specified TSqlModel and saves it to the specified Stream. In addition to the TSqlModel, other artifacts such as refactor log and deployment contributors can be specified in packageOptions.

BuildPackage(String, TSqlModel, PackageMetadata)

Creates a package with the specified TSqlModel and saves it to the specified location.

BuildPackage(String, TSqlModel, PackageMetadata, PackageOptions)

Creates a package with the specified TSqlModel and saves it to the specified location. In addition to the TSqlModel, other artifacts such as refactor log and deployment contributors can be specified in packageOptions.

UpdateModel(DacPackage, TSqlModel, PackageMetadata)

Updates the model in a DacPackage, replacing the current model with a new one.

Before updating, the model will be validated and if errors are encountered a DacServicesException will be thrown. If callers wish to block on warnings as well as errors, they must validate the model by calling Validate() and checking if any errors or warnings are included in the messages returned.

Note: only the model is replaced - all other artifacts such as refactor log, pre-deployment script, post-deployment script and and contributor artifacts are not altered. If any of these artifacts rely on elements that are no longer in the updated model then deployment may fail. It is the responsibility of the caller to ensure that these artifacts are consistent with the new model. The Package API can be used to update other artifacts such as the refactor log and scripts and keep them consistent with the updated model. These artifacts are stored as package parts and are identified by their URI. Package parts can be examined using GetParts(). Please refer to the Package API for further information about updating package parts.

Applies to