mhe*_*all 24 sql-server-data-tools azure-pipelines visual-studio-2017
我使用VS2017 Professional创建的解决方案包含一个引用master数据库的SQL Server数据库项目.使用Hosted VS2017代理在Visual Studio Team Services中构建我的解决方案时,我收到以下错误:
2017-07-14T12:44:17.8387743Z ## [错误] C:\ Program Files(x86)\ Microsoft Visual Studio\2017\Enterprise\MSBuild\Microsoft\VisualStudio\v15.0\SSDT\Microsoft.Data.Tools. Schema.SqlTasks.targets(559,5):错误SQL72027:文件"C:\ Program Files(x86)\ Microsoft Visual Studio\2017\Professional\Common7\IDE\Extensions\Microsoft\SQLDB\Extensions\SqlServer\110\SqlSchemas\master.dacpac"不存在.2017-07-14T12:44:17.8397816ZC:\ Program Files(x86)\ Microsoft Visual Studio\2017\Enterprise\MSBuild\Microsoft\VisualStudio\v15.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets( 559,5):生成错误SQL72027:文件"C:\ Program Files(x86)\ Microsoft Visual Studio\2017\Professional\Common7\IDE\Extensions\Microsoft\SQLDB\Extensions\SqlServer\110\SqlSchemas\master.dacpac"不存在.[d:\一个\ 3\S \主\ ItAsset.Database\ItAsset.Database.sqlproj]
我该如何解决这个问题并获得我在VSTS中构建的解决方案?
Lar*_*ith 49
在多开发人员的情况下,我对此感到满意.这似乎发生在VS2017 SSDT项目中,签入代码的开发人员最初将Visual Studio安装在与您不同的路径或Visual Studio的另一个实例上.例如,如果开发人员A安装在C:\上的默认值,但开发人员B将他的VS2017安装到E:\驱动器,那么创建对Master的引用的人将工作,另一个将找不到dacpac文件.
查看.sqlproj文件,您可能会找到对Master数据库的引用:
<ArtifactReference Include="C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\Extensions\Microsoft\SQLDB\Extensions\SqlServer\130\SqlSchemas\master.dacpac">
<HintPath>$(DacPacRootPath)\Extensions\Microsoft\SQLDB\Extensions\SqlServer\130\SqlSchemas\master.dacpac</HintPath>
Run Code Online (Sandbox Code Playgroud)
注意:这<HintPath>是正确的,但它Include="是一个硬编码路径.似乎没有像通常那样遵循提示路径.若要解决此问题,请尝试将HintPath元素的内容复制到Include属性.保持HintPath不变.
<ArtifactReference Include="$(DacPacRootPath)\Extensions\Microsoft\SQLDB\Extensions\SqlServer\130\SqlSchemas\master.dacpac">
Run Code Online (Sandbox Code Playgroud)
Jas*_*off 16
这是针对Visual Studio 2017的SSDT中的错误.
解决方法是手动编辑项目文件,用$(DacPacRootPath)变量替换完整路径.或者,您可以将SSDT用于Visual Studio 2015.
该错误已在Microsoft Connect站点上报告过两次:https: //connect.microsoft.com/SQLServer/Feedback/Details/3141348
并且,在这里:https: //connect.microsoft.com/SQLServer/Feedback/Details/3133716
请注意,Connect站点已停用.请在此处在UserVoice上投票支持此问题:
| 归档时间: |
|
| 查看次数: |
7481 次 |
| 最近记录: |