【问题标题】:Azure Builds - The type or namespace name 'OpenApi' does not exist in the namespace 'Microsoft'Azure 构建 - 命名空间“Microsoft”中不存在类型或命名空间名称“OpenApi”
【发布时间】:2020-06-03 15:10:04
【问题描述】:

鉴于:
Azure Builds 新手

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

命名空间中不存在类型或命名空间名称“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.AssemblyIn fo.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”(您是否缺少程序集引用?) H2>

Startup.cs(12,17):错误 CS0234:命名空间“Microsoft”中不存在类型或命名空间名称“OpenApi”(您是否缺少程序集引用?)[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”(默认目标)——失败。

构建失败。

【问题讨论】:

  • 这部分是不同包 Microsoft.OpenApi 的一部分吗?
  • 我刚刚添加了那个 nuget 包 nuget.exe push -Source "TeamFeed" -ApiKey AzureDevOps c:\lib\microsoft.openapi.1.1.4.nupkg 来喂食,得到了同样的信息
  • @Rod 尝试在本地打开你的项目,删除包,然后去manage nuget package选择包源,看看你是否会成功构建。
  • 奇怪的是没有包文件夹。我只使用 Swashbuckle.AspNetCore。我更新了帖子。
  • 就我而言,我的一个 NuGet 源返回了 401 Unauthorized 错误。我在构建输出窗口中没有看到这个错误。修复 NuGet 包源导致包正确下载并解决了我的问题。

标签: c# azure asp.net-web-api azure-devops


【解决方案1】:

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

【讨论】:

  • 是的,这对我有用。谢谢。
猜你喜欢
  • 2018-05-09
  • 2018-06-14
  • 2021-07-28
  • 2013-05-04
  • 2015-01-05
  • 1970-01-01
  • 2017-12-29
  • 2014-04-12
相关资源
最近更新 更多