0

我们正在使用 DbDacFx 提供程序来同步我们的生产机器。我们的解决方案中有 ssdt 数据库项目,与我们的网站一起部署。A.sqlproj 引用了 master.dacpac 和另一个数据库项目的 dacpac,比如 X.dacpac。

所有 dacpac 都在同一位置进行部署。

当我们尝试部署 A.dacpac 时,我们得到如下错误:

信息:将包部署到数据库:故障。错误:无法解析来自名为“X.dacpac”的源对外部元素的引用,因为没有加载此类源。错误:无法解析来自名为“master.dacpac”的源对外部元素的引用,因为没有加载此类源。......上述错误重复多次......在远程计算机上处​​理请求时发生错误。错误:调用的目标已引发异常。---> System.Exception:找不到成员“ClassName”。在 System.Runtime.Serialization.SerializationInfo.GetElement(String name, Type&foundType) 在 System.Runtime.Serialization.SerializationInfo.GetString(String name) 在 System.Exception..ctor(SerializationInfo info,1 syncPassId) at Microsoft.Web.Deployment.DeploymentAgent.HandleSync(DeploymentAgentAsyncData asyncData, Nullable1 passId) 错误:找不到成员“ClassName”。在 System.Runtime.Serialization.SerializationInfo.GetElement(String name, Type&foundType) 在 System.Runtime.Serialization.SerializationInfo.GetString(String name) 在 System.Exception..ctor(SerializationInfo info, StreamingContext context) 错误计数:1。

需要知道我们如何克服这些问题。谢谢亚丁。

4

2 回答 2

0

运行部署的机器上是否存在引用的 dacpacs?

如果他们这样做,最简单的方法是将 dacpac 复制到与您正在部署的 dacpac 相同的文件夹中,因为将检查同一目录,否则会检查包含原始 dacpac 的原始路径。

于 2015-10-09T21:25:25.043 回答
0

这仍然是一种痛苦。我们计划通过 runCommand 提供程序编写 sqlpackage.exe 文件命令的脚本并实现自动化!结束问题。谢谢

于 2016-06-10T15:12:07.800 回答