关于azure devops:如何将.net核心WebJob与asp.net核心Web应用程序一起发布?

How to publish .net core WebJob together with asp.net core web app?

我有一个两个网络核心控制台应用程序,作为使用Visual Studio的Web作业部署到Azure。

1
<Project Sdk="Microsoft.NET.Sdk;Microsoft.NET.Sdk.Publish">

当我单独发布它们时,它工作得很好。

如何将.NET核心Web作业与Web应用程序一起发布?

我试过创建webproject/properties/webjob-list.json。路径与WebProject/WebProject.csproj相关:

1
2
3
4
5
6
7
8
9
10
11
{
 "$schema":"http://schemastore.org/schemas/json/webjobs-list.json",
 "WebJobs": [
    {
     "filePath":"../PeopleWebJob/PeopleWebJob.csproj"
    },
    {
     "filePath":"../Reminder/ReminderWebJob.csproj"
    }
  ]
}

我还尝试安装Microsoft.Web.WebJobs.Publishnuget,但这种方法似乎不适用于.NET核心。

可替代地,

如何使用vsts发布webjobs?

我试过把webjob项目的输出复制到$(Build.ArtifactStagingDirectory)/webproject.zip/App_Data/jobs/Triggered上。


VS还不支持将WebJobs与.NET核心应用程序一起部署。

这是一个类似的问题,你可以参考它。要通过vsts发布webjobs,可以参考此链接。

此外,您还可以对其进行压缩,并使用Azure门户创建WebJob,或者使用kudu控制台或ftp进行压缩。


由于您将必要的输出复制到webproject.zip/App_Data/jobs/Triggered(在dotnet发布期间不要压缩已发布的Web项目,然后通过存档文件任务复制文件和zip文件),因此只需通过Azure应用程序服务部署任务发布项目。

包装或文件夹:{the website zip file}

选中"其他部署选项"部分中的"使用Web Deploy发布"选项