Метод DacPackageExtensions.UpdateModel
Обновляет модель в DacPackage, заменяя текущую модель на новую. Перед обновлением модель будет проверена. При обнаружении ошибок вызывается исключение DacServicesException. Если вызывающим требуется заблокировать предупреждения и ошибки, необходимо проверить модель, вызвав метод Validate() и посмотрев, есть ли ошибки или предупреждения в возвращенных сообщениях. Примечание. Заменяется только модель, все другие артефакты, такие как журнал рефакторинга, скрипт, выполняемый перед развертыванием, скрипт, выполняемый после развертывания, а также артефакты участников, не изменяются. Если любой из этих артефактов зависит от элементов, которых больше нет в обновленной модели, то развертывание может завершиться ошибкой. Убедиться в том, что эти артефакты соответствуют новой модели, должен вызывающий объект. С помощью API Package можно обновить другие артефакты, такие как журнал рефакторинга и скрипты, чтобы они соответствовали измененной модели. Эти артефакты хранятся как части пакета и идентифицируются своими URI. Части пакета можно просмотреть с помощью метода GetParts(). Дополнительные сведения об обновлении частей пакета см. в описании API Package.
Пространство имен: 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
)
Параметры
- dacPackage
Тип: Microsoft.SqlServer.Dac.DacPackage
Объект DacPackage, который требуется обновить.
- newModel
Тип: Microsoft.SqlServer.Dac.Model.TSqlModel
Объект TSqlModel, представляющий модель, которая сохраняется в пакет.
- packageMetadata
Тип: Microsoft.SqlServer.Dac.PackageMetadata
Объект PackageMetadata, описывающий имя, версию и использование пакета DacPackage, или значение null, если сведения о пакете изменять не следует.
Примечание об использовании
В языках Visual Basic и C# этот метод можно вызывать как метод экземпляра для любого объекта типа DacPackage. Если при вызове этого метода используется синтаксис вызова экземпляра, первый параметр пропускается. Дополнительные сведения см. в разделе b8020aae-374d-46a9-bcb7-8cc2390b93b6 или 175ce3ff-9bbf-4e64-8421-faeb81a0bb51.
Исключения
Исключение | Условие |
---|---|
DacServicesException | Сведения о том, содержит ли пакет DacPackage данные. |
DacServicesException | Сведения о том, возникли ли ошибки при сохранении модели в пакет, в том числе ошибки проверки модели. |
DacServicesException | Сведения о том, был ли пакет dacPackage загружен вместе с ReadWrite. |
ArgumentNullException | Сведения о том, равен ли параметр dacPackage или newModel null. |