Поделиться через


Метод 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
)

Параметры

Примечание об использовании

В языках Visual Basic и C# этот метод можно вызывать как метод экземпляра для любого объекта типа DacPackage. Если при вызове этого метода используется синтаксис вызова экземпляра, первый параметр пропускается. Дополнительные сведения см. в разделе b8020aae-374d-46a9-bcb7-8cc2390b93b6 или 175ce3ff-9bbf-4e64-8421-faeb81a0bb51.

Исключения

Исключение Условие
DacServicesException

Сведения о том, содержит ли пакет DacPackage данные.

DacServicesException

Сведения о том, возникли ли ошибки при сохранении модели в пакет, в том числе ошибки проверки модели.

DacServicesException

Сведения о том, был ли пакет dacPackage загружен вместе с ReadWrite.

ArgumentNullException

Сведения о том, равен ли параметр dacPackage или newModel null.

См. также

Справочник

DacPackageExtensions Класс

Пространство имен Microsoft.SqlServer.Dac