Freigeben über


DacPackageExtensions.UpdateModel-Methode

Aktualisiert das Modell in einem DacPackage, wobei das aktuelle Modell durch ein neues Modell ersetzt wird. Vor dem Aktualisieren wird das Modell validiert; wenn Fehler festgestellt werden, wird eine DacServicesException ausgelöst. Wenn Aufrufer Warnungen und Fehler blockieren möchten, müssen sie das Modell durch Aufrufen von Validate() validieren und überprüfen, ob in den zurückgegebenen Meldungen Fehler oder Warnungen enthalten sind. Hinweis: Nur das Modell wird ersetzt – alle übrigen Artefakte wie Umgestaltungsprotokoll, Skript vor der Bereitstellung, Skript nach der Bereitstellung und Contributor-Artefakte werden nicht geändert. Wenn sich Artefakte auf Elemente stützen, die im aktualisierten Modell nicht mehr enthalten sind, kann die Bereitstellung fehlschlagen. Der Aufrufer muss sicherstellen, dass die betreffenden Artefakte mit dem neuen Modell konsistent sind. Mit der Package-API können andere Artefakte wie das Umgestaltungsprotokoll und Skripts aktualisiert werden, um ihre Konsistenz mit dem aktuellen Modell sicherzustellen. Diese Artefakte werden als Paketteile gespeichert und anhand ihres URI identifiziert. Paketteile können mithilfe von GetParts() untersucht werden. Weitere Informationen zum Aktualisieren von Paketteilen finden Sie in der Package-API.

Namespace:  Microsoft.SqlServer.Dac
Assembly:  Microsoft.SqlServer.Dac.Extensions (in Microsoft.SqlServer.Dac.Extensions.dll)

Syntax

'Declaration
<ExtensionAttribute> _
Public Shared Sub UpdateModel ( _
    dacPackage As DacPackage, _
    newModel As TSqlModel, _
    packageMetadata As PackageMetadata _
)
'Usage
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
)

Parameter

Hinweis zur Verwendung

In Visual Basic und C# können Sie die Methode als Instanzenmethode für jedes Objekt vom Typ DacPackage aufrufen. Wenn Sie Instanzmethodensyntax zum Aufruf dieser Methode verwenden, vernachlässigen Sie den ersten Parameter. Weitere Informationen finden Sie unter b8020aae-374d-46a9-bcb7-8cc2390b93b6 oder 175ce3ff-9bbf-4e64-8421-faeb81a0bb51.

Ausnahmen

Ausnahme Bedingung
DacServicesException

Wenn das DacPackage Daten enthält.

DacServicesException

Wenn Fehler beim Speichern des Modells im Paket auftreten, einschließlich von Fehlern beim Validieren des Modells.

DacServicesException

Wenn das dacPackage nicht mit ReadWrite geladen wurde.

ArgumentNullException

Wenn der dacPackage-Parameter oder der newModel-Parameter NULL ist.

Siehe auch

Verweis

DacPackageExtensions Klasse

Microsoft.SqlServer.Dac-Namespace