Azure构建 - 'Microsoft'命名空间中不存在'OpenApi'类型或命名空间

3
给定:
新手使用 Azure Builds。
我有一个简单的 WebApi 项目,使用 Swashbuckle.AspNetCore。在本地一切正常(当然),但是当我尝试在 Azure 构建中构建时,出现以下错误:

名称空间 'Microsoft' 中不存在类型或命名空间名为 'OpenApi'

我将 SwashBuckle 和 OpenApi NuGet 包添加到 Azure Artifacts 并在我的构建脚本中引用了它们。
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    restoreSolution: '**/*.sln'
    feedsToUse: 'select'
    vstsFeed: '/12b2f6b8-fb61-4aac-a526-27a85a46a5b4'

/reference:"C:\Program Files\dotnet\packs\Microsoft.NETCore.App.Ref\3.1.0\ref\netcoreapp3.1\System.Xml.XPath.XDocument.dll" /reference:"C:\Program Files\dotnet\packs\Microsoft.NETCore.App.Ref\3.1.0\ref\netcoreapp3.1\WindowsBase.dll" /debug+ /debug:portable /filealign:512 /optimize+ /out:obj\Release\netcoreapp3.1\ApiApplication1.dll /target:exe /warnaserror- /utf8output /deterministic+ /analyzer:"C:\Program Files\dotnet\sdk\3.1.202\Sdks\Microsoft.NET.Sdk.Web\analyzers\cs\Microsoft.AspNetCore.Analyzers.dll" /analyzer:"C:\Program Files\dotnet\sdk\3.1.202\Sdks\Microsoft.NET.Sdk.Web\analyzers\cs\Microsoft.AspNetCore.Mvc.Analyzers.dll" /analyzer:"C:\Program Files\dotnet\sdk\3.1.202\Sdks\Microsoft.NET.Sdk.Web\analyzers\cs\Microsoft.AspNetCore.Components.Analyzers.dll" Controllers\WeatherForecastController.cs Program.cs Startup.cs WeatherForecast.cs "C:\Users\rodneysantiago\AppData\Local\Temp.NETCoreApp,Version=v3.1.AssemblyAttributes.cs" obj\Release\netcoreapp3.1\ApiApplication1.AssemblyInfo.cs /warnaserror+:NU1605 使用目录中的编译器共享编译:C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin\Roslyn

[错误]RsWpfAndApiSolution\ApiApplication1\Startup.cs(12,17):错误 CS0234:名称空间“Microsoft”中不存在类型或命名空间名称“OpenApi”(是否缺少程序集引用?)

Startup.cs(12,17): error CS0234: The type or namespace name 'OpenApi' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) [C:\agent2_work\2\s\RsWpfAndApiSolution\ApiApplication1\ApiApplication1.csproj] 已完成构建项目“C:\agent2_work\2\s\RsWpfAndApiSolution\ApiApplication1\ApiApplication1.csproj”(默认目标)--失败。 已完成构建项目“C:\agent2_work\2\s\RsWpfAndApiSolution\RsWpfAndApiSolution.sln”(默认目标)--失败。

生成失败。

enter image description here


这是 Microsoft.OpenApi 不同的包的一部分吗? - Vivek Nuna
我刚刚将该NuGet包nuget.exe push -Source "TeamFeed" -ApiKey AzureDevOps c:\lib\microsoft.openapi.1.1.4.nupkg添加到了feed中,但是收到了相同的消息。 - Rod
@Rod 尝试在本地打开你的项目,删除包文件,并进入管理NuGet程序包选择包源,看看是否能够成功构建。 - Cece Dong - MSFT
奇怪的是,没有一个packages文件夹。我只使用了Swashbuckle.AspNetCore。我已经更新了帖子。 - Rod
你的意思是,如果从Azure Artifacts没有本地恢复软件包?你在本地构建仍然成功了吗? - Cece Dong - MSFT
1
在我的情况下,我的一个NuGet源返回了401未经授权的错误。我没有在构建输出窗口中看到这个错误。修复NuGet软件包源导致软件包正确下载并解决了我的问题。 - Paul Williams
1个回答

2

卸载 Swashbuckle.AspNetCore 并重新安装同一包的最新版本以解决此错误。不幸的是,VS 不会显示此错误,但在 CI/CD 或运行命令行时会被捕获。


是的,这对我很有帮助。谢谢。 - Sabuncu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接