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
- dacPackage
Typ: Microsoft.SqlServer.Dac.DacPackage
Das zu aktualisierende DacPackage
- newModel
Typ: Microsoft.SqlServer.Dac.Model.TSqlModel
TSqlModel, das das Modell darstellt, das im Paket gespeichert werden soll.
- packageMetadata
Typ: Microsoft.SqlServer.Dac.PackageMetadata
PackageMetadata, die Name, Version und zu verwendende Beschreibung für das DacPackage angeben, oder NULL, wenn die Paketinformationen unverändert beibehalten werden sollen.
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. |