部署到Azure的.net核心Web Api需要对我的VSTS构建进行哪些更改

部署到Azure的.net核心Web Api需要对我的VSTS构建进行哪些更改,azure,.net-core,azure-devops,asp.net-core-webapi,azure-pipelines-build-task,Azure,.net Core,Azure Devops,Asp.net Core Webapi,Azure Pipelines Build Task,我正在尝试使用VST构建和部署我的.net核心Web API Web应用程序服务 以前版本的.net(包括最近版本的.net core)似乎创建了一个zip文件。Azure应用程序服务部署的默认配置将字段包或文件夹设置为$(System.DefaultWorkingDirectory)/***.zip。这对我来说是失败的,错误是找不到具有指定模式的包:D:\a\1\s\***.zip 通过将路径更改为简单的$(System.DefaultWorkingDirectory),我可以使它获得某种程度

我正在尝试使用VST构建和部署我的.net核心Web API Web应用程序服务

以前版本的.net(包括最近版本的.net core)似乎创建了一个zip文件。Azure应用程序服务部署的默认配置将字段包或文件夹设置为
$(System.DefaultWorkingDirectory)/***.zip
。这对我来说是失败的,错误是
找不到具有指定模式的包:D:\a\1\s\***.zip

通过将路径更改为简单的
$(System.DefaultWorkingDirectory)
,我可以使它获得某种程度的成功,但从Azure控制台中,我可以看到它部署了所有东西(不仅仅是二进制文件)

我可以在这之后添加一大堆问题,但我会保持具体


另外,我已经看过了:,但这似乎是一个不同的问题

我不完全理解这些问题,但我可以给你一些建议

1。清洁来源

在“获取源”步骤中,选择Clean->true->Sources and Output。 这将确保清除所有旧代码

2。创建包

构建后使用“dotnet发布”步骤。在作为POC的“项目路径”中,我建议设置项目路径:

{Your Solution}/{Your Project}/{Your Project}.csproj

您不需要添加“$(System.DefaultWorkingDirectory)”,它会自动添加到您的输入路径中。这将创建package.zip文件

3。复制软件包

使用“复制文件”步骤。对于“目标文件夹”,选择$(build.artifactstagingdirectory)。作为图案集“***.zip”。这将确保部署时只使用包文件

4。部署包

使用“Azure应用程序服务部署”。作为“包或文件夹”,请选择以下选项之一:

$(build.artifactstagingdirectory)/***.zip

$(build.artifactstagingdirectory)/{Your Solution}/{Your Project}/***.zip


希望对您有所帮助。

您可以选中.NET Core Publish任务的Zip Published Projects选项并指定输出参数(
--output$(build.artifactstagingdirectory


然后Web API项目将被发布并压缩到工件目录中的一个包中,然后您可以指定
$(build.artifactstagindirectory)/**/*.zip
在包或文件夹输入框中,如果您在同一版本中部署应用程序。

谢谢,这对我很有用。如果这是VSO中的默认输出,那就太好了