Visual studio 2013 项目和快照之间的架构比较

Visual studio 2013 项目和快照之间的架构比较,visual-studio-2013,sql-server-2012,sql-server-data-tools,schema-compare,dacpac,Visual Studio 2013,Sql Server 2012,Sql Server Data Tools,Schema Compare,Dacpac,我使用Visual Studio 2013和SSDT来开发我的数据库项目。解决方案中的某些项目依赖于其他项目。 我使用模式比较工具创建部署/更新脚本。我发现当前项目状态和最新项目快照之间存在差异。之后,我创建了新的快照 现在我得用另一台电脑了。当我尝试比较project和snapshot时,我收到一系列错误“无法解析来自名为'SOMEPROJECT.dacpac'的源的对外部元素的引用,因为没有加载此类源。” 我认为问题可能出在文件夹名称上——以前的解决方案是“d:\projects\solut

我使用Visual Studio 2013和SSDT来开发我的数据库项目。解决方案中的某些项目依赖于其他项目。 我使用模式比较工具创建部署/更新脚本。我发现当前项目状态和最新项目快照之间存在差异。之后,我创建了新的快照

现在我得用另一台电脑了。当我尝试比较project和snapshot时,我收到一系列错误“无法解析来自名为'SOMEPROJECT.dacpac'的源的对外部元素的引用,因为没有加载此类源。” 我认为问题可能出在文件夹名称上——以前的解决方案是“d:\projects\solution name\”,现在是“c:\solution name\”。我不能在新计算机上使用磁盘D:了


有没有办法解决这个问题?

复制someproject.dacpac。将其重命名为Someproject.zip。解压缩文件。打开提取的model.xml文件。找到标题中列出引用的部分。找到引用的文件。将引用文件的副本放在与someproject.dacpac相同的目录中。如果失败,那么您可以使用dos命令subst创建一个路径,该路径映射到引用文件的真实位置。

删除引用并添加正确的位置(如果存在的话)是第一件要尝试的事情。您也可以尝试直接编辑sqlproj文件来执行此操作,但是如果只有几件事情需要调整,那么使用GUI可能会更容易。问题在于快照,而不是项目。您是否查看了SLN或sqlproj文件以查看这些文件在幕后是如何被引用的?如果您对以前使用的各种文件有问题,我会首先检查文件中如何引用“SOMEPROJECT.dacpac”。