【发布时间】:2019-12-17 10:55:08
【问题描述】:
我正在尝试从 Azure DevOps(以前称为 VisualStudio.com)下载工作分支并将其运行到第二台机器上。
主机(VS2017 Pro):
- SolutionABC 完美构建和运行
- 分支到 SolutionABC-Branch 并进行了小的更改(此问题之外)
- SolutionABC-Branch 完美构建并运行
- SolutionABC-Branch 已签入
第二台机器(VS2019 Pro):
- SolutionABC 完美下载、构建和运行
- SolutionABC-Branch 下载,但不会构建:
通过错误对话框追溯错误,我得到了:
警告 BC40056
在 Imports 中指定的命名空间或类型 'Microsoft.IdentityModel.Clients.ActiveDirectory' 不包含任何 公共成员或找不到。确保命名空间或类型 已定义并包含至少一个公共成员。确保 导入的元素名称不使用任何别名。
快速谷歌搜索引导我here,所以按照说明确实存在一些问题:
首先,请问我该如何解决?
其次,当从它分支出来的父解决方案在这台机器上完美运行时,这是如何发生的?
更新
似乎许多项目引用(包括解决方案中的其他项目以及 Microsoft DLL)也丢失了。无奈之下,我将 Microsoft DLL 从初始项目复制到了分支项目。这已经解决了这个问题,但我的问题仍然没有答案......
解决方案
问题原来是 VSTS/TFS 的文件/路径长度限制。将我的本地存储库重新定位到更短的目录名称(例如 C:\TFS)解决了这个问题。
【问题讨论】:
-
在黑暗中拍摄:该程序集的使用对分支来说是新的,它添加了这个程序集,看起来像是 Azure SDK for .NET 的一部分 - 是什么机器2上没有安装哪个?可能是 2019 年安装时未选择的组件。
标签: asp.net visual-studio tfs webforms azure-devops