【发布时间】:2019-10-05 00:27:29
【问题描述】:
我在 Azure DevOps 上有一个构建过程,我已经成功构建了一段时间。
最近我的一位开发人员添加了一个包含 MVC 库的页面
using System.Web.Mvc
但是,当我作为 CI/CD 流程的一部分通过 Azure DevOps 构建代理构建它时,构建一直失败。
ClassName.cs(5,18):错误 CS0234:命名空间“System.Web”中不存在类型或命名空间名称“Mvc”(您是否缺少程序集引用?)
如果我在自己的笔记本电脑上使用 Visual Studio 2017 手动编译,或者如果我在运行 Azure DevOps 构建代理的构建机器上使用 Visual Studio 2017,它就会编译。
我尝试解决的步骤:
- 确保在我的项目的 NuGet 中,我拥有最新的 Microsoft.Aspnet.MVC 版本。
- 我已尝试在 build 上重新安装 Microsoft.Aspnet.MVC
机器通过 NuGet - 我验证了我的项目的默认包
管理格式为:Packages.config - 我确认我的 packages.config 有
- 我尝试重新安装所有 通过运行 Update-Package 在我的构建机器上安装包 --重新安装命令。
- 我确认在构建代理机器上我有 Microsoft.AspNet.Mvc 文件夹及其所有 dll 在 repositoryPath -
$(Solutiondir)/packages 和 globalPackagesFolder -
$(UserProfile).nuget\packages
我不知道为什么它在 Visual Studio 上手动编译,但是当我通过 x64 位上的 MS Build 使用构建代理进行编译时出现错误。
【问题讨论】:
-
您的构建是否有 NuGet 还原步骤?
-
是的,我这样做了,就在我 *.sln 的构建步骤之前
-
嗨,这个问题有什么更新吗?如果 Elphas 的回复有帮助,请考虑将其标记为答案。同样的问题仍然存在,请随时告诉我们:)
标签: c# visual-studio msbuild azure-devops