Приложение DACPAC в C # внезапно не удается развернуть - PullRequest
0 голосов
/ 22 февраля 2019

В приложении C # windows у нас есть сервер баз данных SQL Express 2012, который работает параллельно.

Мы используем DACPAC для обновления и развертывания новых баз данных из приложения с использованием объекта DacServices.

например: DacServices.Deploy

В настоящее время мы находимся на Microsoft.SqlServices.Dac.dll версии 12.0.3021.1.Кажется, это последнее, что я могу найти.

Ручной запуск dacpac в SSMS работает нормально.Запуск через приложение до недавнего времени работал нормально.Теперь мы получаем следующее исключение при попытке развертывания через приложение C #:

{Microsoft.Data.Tools.Schema.Sql.Deployment.DeploymentFailedException: Internal Error.Служба платформы базы данных с типом Microsoft.Data.Tools.Schema.Sql.Sql110DatabaseSchemaProvider недопустима.Вы должны убедиться, что служба загружена, или вы должны предоставить полное имя типа действительной службы платформы базы данных.---> Microsoft.Data.Tools.Schema.Extensibility.ExtensibilityException: Внутренняя ошибка.в Microsoft.Data.Tools.Schema.Extensibility.ExtensionTypeLoader.InstantiateDatabaseSchemaProvider (String databaseSchemaProviderType) в Microsoft.Data.Tools.Schema.Extensibility.ExtensionManager.UpdateExtensions () в Microsoft.Data.Tools.ExExtension.MenСтрока databaseSchemaProviderType) в Microsoft.Data.Tools.Schema.Extensibility.ExtensionManager. <> C__DisplayClass3.b__2 () в System.Lazy 1.CreateValue() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Lazy 1.get_Value () в Microsoft.Data.Tools.Schema.Extensibility.ExtensionManager.GetExСтрока dsp) в Microsoft.Data.Tools.Schema.Sql.Deployment.SqlDeployment.CreateExtensionManagerFromModel (пакет SqlPackage) --- Конец внутренней трассировки стека исключений --- в Microsoft.Data.Tools.Schema.Sql.Deployment.SqlDeployment.CreateExtensionManagerFromModel (пакет SqlPackage) в Microsoft.Data.Tools.Schema.Sql.Deployment.SqlDeploymentEndpointPackage.OnInit (ошибки ErrorManager, String targetDBName) в Microsoft.Data.Tools.Schema.Sql.Deployment..Dloy SqlDКонструктор mentConstructor) в Microsoft.Data.Tools.Schema.Sql.Deployment.SqlDeploymentConstructor.ConstructServiceImplementation () в Microsoft.SqlServer.Dac.DacServices.CreatePackageToDatabaseDeployment (строка StringSqlServer.Dac.DeployOperation. <> C__DisplayClass3. <> C__DisplayClass5.b__1 () в Microsoft.Data.Tools.Schema.Sql.Dac.OperationLogger.Capture (действие) в Microsoft.SqlServer.Dac.DeployOperation. <> C__Display.b__0 (Операция объекта, токен CancellationToken) в Microsoft.SqlServer.Dac.Operation.Microsoft.SqlServer.Dac.IOperation.Run (контекст OperationContext) в Microsoft.SqlServer.Dac.ReportMessageOperation.Microsoft.SqlServer.Dac.IOperation.Run (OperationConteteконтекст) в Microsoft.SqlServer.Dac.OperationExtension.CompositeOperation.Microsoft.SqlServer.Dac.IOperation.Run (контекст OperationContext) в Microsoft.SqlServer.Dac.OperationExtension.CompositeOperation.Microsoft.SqlServer.Dac.IOperation.Run (контекст OperationContext) в Microsoft.SqlServer.Dac.DeployOperation.Microsoft.SqlServer.Dac.IOperation.Run (контекст OperationContext)}

NUGETот Microsoft на самом деле есть меньшая версия dll версии 12, и я не могу видеть, где она была бы обновлена ​​до большей версии, чтобы попытаться получить последнюю версию.(также снижение до последней версии dac dll от Microsoft для NUGET не устраняет проблему)

Я подозреваю, что обновление для Windows прошло и сломало наши разработки, но не может доказать это и не может найти никакой информации.У кого-нибудь есть понимание?

...