【问题标题】:Azure Pipeline : ASP.NET and .NET Core applications under one build pipelineAzure Pipeline:一个构建管道下的 ASP.NET 和 .NET Core 应用程序
【发布时间】:2023-01-19 12:43:28
【问题描述】:

背景:

我在一个解决方案文件下有多个 ASP.NET 项目。我有一个用于 ASP.NET 项目的构建管道,并使用 .sln 构建它。 现在,我们已经将一个新项目添加到 .NET CORE 中的同一个 .sln。

问题陈述:

在我的构建管道中,当我尝试构建整个解决方案时,它会向新添加的项目抛出异常。 (.NET 核心)

“命名空间中不存在类型或命名空间名称‘Entity’ 'System.Data'(您是否缺少程序集参考?)”

我相信这是由于框架版本。

问题:

是否可以将两个项目都放在一个构建管道下,如果可以,我该如何实现?如果不是,理想的解决方案是什么?

附加信息:从视觉工作室,一切都在构建和工作正常,但我构建了项目管道,它抛出了这个错误。

【问题讨论】:

  • 嗨 schatak 你的问题的最新状态是什么?

标签: asp.net azure-pipelines


【解决方案1】:

最初从 visual studio 构建代码以避免在 azure 管道中构建时出错.

在 azure pipeline 中使用了不同的项目使用 Visual Studio 或 Azure Devops 创建存储库。

创建存储库时填写必要的字段

然后它进入 Git Credential Manager 屏幕,必须选择您要从中创建的帐户并继续下一步。

如果需要,创建分支。使用 Visual Studio,我们可以同步并推送从特定分支所做的更改

使用 Azure 订阅创建管道并构建代码。

参考这个link获取更多信息。

【讨论】:

  • 感谢您的帮助,但这不是我的问题。
【解决方案2】:

您可以添加对 System.Data.Entity 的引用以测试是否再次抛出异常。

或者您可以参考此文档以获取有关Organize your project to support both .NET Framework and .NET的更多详细信息

================================================ ==============

11月30日更新

此错误消息表示构建过程无法找到来自还原的 nuget 包的程序集。所以你应该检查 build-pipeline 中恢复任务的日志,以确保包恢复成功。

确保在像这样的构建任务之前使用nuget tool installnuget restore 任务,如果您的构建包含私人提要,请添加nuget authenticate task 以正确恢复项目。 (避免使用 dotnet 相关任务会导致您的项目目标为 .net 框架,并且 dotnet 任务无法识别 .sln 项目)

【讨论】:

  • 附加信息:从视觉工作室,一切都在构建和工作正常,但我构建项目管道它抛出这个错误。
  • @Schatak 能否分享您的管道配置以供进一步调查?
  • NuGet 还原工作正常,但构建步骤失败。另外,我现在不使用 nuget 身份验证任务。
  • 嗨@Schatak 你用的是什么程序集?由于 azure devops 托管代理逐渐migrating to .net6.0,我想你需要保持与这个目标框架的兼容性。顺便说一句,你用self hosted agent测试过吗?
  • 我能够通过更新 NuGet 包版本来解决这个问题,不知道我还做了什么,但它得到了修复,谢谢伙伴。
【解决方案3】:

我能够通过更新管道的 NuGet 包版本来解决这个问题。与应用程序版本相同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-28
    • 1970-01-01
    • 2021-12-28
    • 2022-08-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多