- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
本次调用 DacServices.Deploy
在 SQL Server LocalDB 2014 上运行良好,但在安装 SQL Server LocalDB 2016 时失败:
string dacConnectionString = $"Server=(localdb)\\mssqllocaldb; Integrated Security=true; database={DatabaseName}";
var dacServices = new DacServices(dacConnectionString);
dacServices.Message += (sender, args) => Console.WriteLine($"{args.Message.Prefix}: {args.Message.Message}"); // Log dacpac deploy messages
dacServices.Deploy(LoadDacPac(), DatabaseName, true, new DacDeployOptions()
{
BlockOnPossibleDataLoss = false
});
DacServices.Deploy
抛出的异常LocalDB 2016 是:
Microsoft.SqlServer.Dac.DacServicesException was unhandled by user code
HResult=-2146233088
Message=Could not deploy package.
Source=Microsoft.SqlServer.Dac
StackTrace:
at Microsoft.SqlServer.Dac.DeployOperation.Microsoft.SqlServer.Dac.IOperation.Run(OperationContext context)
at Microsoft.SqlServer.Dac.OperationExtension.Execute(IOperation operation, DacLoggingContext loggingContext, CancellationToken cancellationToken)
at Microsoft.SqlServer.Dac.DacServices.InternalDeploy(IPackageSource packageSource, Boolean isDacpac, String targetDatabaseName, DacDeployOptions options, CancellationToken cancellationToken, DacLoggingContext loggingContext)
at Microsoft.SqlServer.Dac.DacServices.Deploy(DacPackage package, String targetDatabaseName, Boolean upgradeExisting, DacDeployOptions options, Nullable`1 cancellationToken)
at Tv.Base.Test.Database.TestSqlLocalDb.CreateOrUpdateDatabaseIfNeeded(Boolean force) in D:\BuildAgent-02\work\6ec37398501798d0\src\Base.Test.Database\TestSqlLocalDb.cs:line 173
at Tv.Services.Inventory.DataAccess.Tests.InventoryDatabaseFixture..ctor() in C:\src\tv\services\inventory\test\DataAccess.Tests\InventoryDatabaseFixture.cs:line 40
InnerException:
HResult=-2146233088
Message=Unable to connect to target server.
Source=Microsoft.Data.Tools.Schema.Sql
StackTrace:
at Microsoft.Data.Tools.Schema.Sql.Deployment.SqlDeploymentEndpointServer.OnInit(ErrorManager errors, String targetDBName)
at Microsoft.Data.Tools.Schema.Sql.Deployment.SqlDeployment..ctor(SqlDeploymentConstructor constructor)
at Microsoft.Data.Tools.Schema.Sql.Deployment.SqlDeploymentConstructor.ConstructServiceImplementation()
at Microsoft.SqlServer.Dac.DacServices.CreatePackageToDatabaseDeployment(String connectionString, IPackageSource packageSource, String targetDatabaseName, DacDeployOptions options, ErrorManager errorManager)
at Microsoft.SqlServer.Dac.DeployOperation.<>c__DisplayClass3.<>c__DisplayClass5.<CreatePlanInitializationOperation>b__1()
at Microsoft.Data.Tools.Schema.Sql.Dac.OperationLogger.Capture(Action action)
at Microsoft.SqlServer.Dac.DeployOperation.<>c__DisplayClass3.<CreatePlanInitializationOperation>b__0(Object operation, CancellationToken token)
at Microsoft.SqlServer.Dac.Operation.Microsoft.SqlServer.Dac.IOperation.Run(OperationContext context)
at Microsoft.SqlServer.Dac.ReportMessageOperation.Microsoft.SqlServer.Dac.IOperation.Run(OperationContext context)
at Microsoft.SqlServer.Dac.OperationExtension.CompositeOperation.Microsoft.SqlServer.Dac.IOperation.Run(OperationContext context)
at Microsoft.SqlServer.Dac.OperationExtension.CompositeOperation.Microsoft.SqlServer.Dac.IOperation.Run(OperationContext context)
at Microsoft.SqlServer.Dac.DeployOperation.Microsoft.SqlServer.Dac.IOperation.Run(OperationContext context)
SqlConnection
连接到数据库,并且因为我可以使用命令行将此 dacpac 部署到 SQL Server LocalDB 2016:
sqlpackage "/Action:publish" "/SourceFile:MyDatabase.dacpac" "/TargetConnectionString:Server=(localdb)\mssqllocaldb;Database=MyDatabase;Integrated Security=true"
> sqllocaldb info mssqllocaldb
Name: MSSQLLocalDB
Version: 13.0.1601.5
Shared name:
Owner: DOMAIN\user
Auto-create: Yes
State: Running
Last start time: 7/1/2016 5:09:43 PM
Instance pipe name: np:\\.\pipe\LOCALDB#C1DD8548\tsql\query
> sqllocaldb v
Microsoft SQL Server 2014 (12.0.2000.8)
Microsoft SQL Server 2016 (13.0.1601.5)
Microsoft.SqlServer.Dac
正在使用的程序集来自此 NuGet 包:
最佳答案
对此的修复确实是更新 Microsoft.SqlServer.Dac
的版本。我们正在使用的程序集 - 我发现我应该在看到 @kevin-cunnane 的建议之前不久尝试一下。
有几个因素使这不太明显,这就是为什么它在 SO 上:
Microsoft.SqlServer.Dac
的 NuGet 包。和相关程序集。其中一些不是由 Microsoft 维护的,包括我使用的那个 ( Microsoft.SqlServer.Dac )。微软官方版本直到 2016 年 6 月才在 NuGet.org 上可用,并且它没有最明显的 NuGet id ( Microsoft.SqlServer.DacFx.x64 )。所以运行update-package Microsoft.SqlServer.Dac
没有达到预期的效果。 C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\130\Microsoft.SqlServer.Dac.dll
),但它们未安装在 GAC 中或以其他方式容易找到。 # Remove the old NuGet dependencies
uninstall-package Microsoft.SqlServer.Dac
# Install the new Dac NuGet package
Install-Package Microsoft.SqlServer.DacFx.x64
关于sql-server-data-tools - DacServices.Deploy 到 SQL Server LocalDB 2016 失败 - 无法连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38185082/
我们有一些自动化的 dacpac 部署代码,可以使用 Microsoft.SqlServer.Dac 在 C# 中正确处理 CreateNewDatabase 和直接更新数据库场景 现在,在 Crea
我们正在使用 DacServices 更新我们的数据库。然而,有时添加新的约束会导致 Constraint Violations,这需要我们编写迁移脚本以确保列中的数据有效。 但是对于 DacServ
所以我已经成功部署了我们的 DACPAC schema via Octopus 。我正在使用 Deploy.ps1 脚本与 .Net 对象交互,就像本文所述。 我希望通过在我们的 Octopus 日志
在 PowerShell 中,我正在使用 Microsoft.SqlServer.Dac.DacServices 和 Microsoft.SqlServer.Dac.DacDeployOptions
我想在单用户模式下发布 dac pac 以防止在数据库升级时不必要的数据库更改。为此,我在 Microsoft.SqlServer.Dac.DacServices 中使用了 Deploy 函数。 那个
本次调用 DacServices.Deploy在 SQL Server LocalDB 2014 上运行良好,但在安装 SQL Server LocalDB 2016 时失败: string dacC
我是一名优秀的程序员,十分优秀!