Share via


DacPackage Class

Definition

Representation of the artifact that contains the definition of a data-tier application.

public sealed class DacPackage : IDisposable
type DacPackage = class
    interface IDisposable
Public NotInheritable Class DacPackage
Implements IDisposable
Inheritance
DacPackage
Implements

Properties

Description

Get an optional summary of this package.

Name

Get identifier for this package.

PostDeploymentScript

Get stream used to read and write script executed after deploying schema contained in this package.

PreDeploymentScript

Get stream used to read and write script executed prior to deploying schema contained in this package.

Version

Get version information for this package.

VersionPrefix

Get version prefix information for the package version Ex: VersionPrefix will be "preview" for preview version and "" for released version

Methods

Dispose()

Release the resources held by this instance.

Load(Stream, DacSchemaModelStorageType, FileAccess)

Load a package from the specified Stream.

Load(Stream, DacSchemaModelStorageType)

Load a package from the specified Stream.

Load(Stream)

Load a package from the specified Stream.

Load(String, DacSchemaModelStorageType, FileAccess)

Load a package file specified by fileName.

Load(String, DacSchemaModelStorageType)

Load a package file specified by fileName.

Load(String)

Load a package file specified by fileName.

Unpack(String)

Place the contents of this package into the directory specified by directoryPath.

Extension Methods

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.

GetCollationString(DacPackage)

Returns the database collation for the package.

IsLedgerOn(DacPackage)

Applies to