如何使用 WebJobs SDK 3.0 将针对 netcoreapp2.1 的 webjobs 从 Visual Studio 发布到 Azure
How to publish webjobs targeting netcoreapp2.1 with WebJobs SDK 3.0 to Azure from Visual Studio
由于 WebJobs SDK v3.0.0
正式发布,我刚刚将我的网络作业迁移到 netcoreapp2.1
。迁移进行得很顺利,但我无法再找出将这些内容从 Visual Studio 发布到 Azure 的正确方法。
这里有几次尝试都失败了:
使用 SDK v2.x.x
,我使用 Microsoft.Web.WebJobs.Publish
NuGet 包来获取额外的右键单击上下文条目 Publish as WebJobs...
。
现在添加这个包不再添加上下文条目。
我尝试了经典的 Publish...
选项。这个似乎已经以某种方式更新以支持 webjobs,因为我可以 select 对话框中的一些选项,如 webjobs 名称或类型(Continuous
或 Triggered
)。问题是发布在那种情况下什么都不做(文件根本没有推送到我的网络应用程序)。
我尝试通过使用此新流程创建新配置文件来混合这两个选项,同时仍在 Properties
文件夹中添加 NuGet Microsoft.Web.WebJobs.Publish
和 webjob-publish-settings.json
文件我的项目。在那种情况下,上下文菜单仍未显示,但经典 Publish...
至少现在将一些文件推送到我的网络应用程序。这种情况下的问题是 Kudo 似乎没有将其检测为网络作业,也没有 运行 它。
我尝试更新发布配置文件以强制发布过程生成 EXE
文件(控制台 netcoreapp.2.1 默认为 DLL
文件)。这仍然没有用。发布过程在发布目录中为目标平台创建一个新的子文件夹并在其中创建 EXE
但我认为 Kudu 不会扫描子文件夹以查找 webjobs 可执行文件。
最后我找到了 that article,它充满了黑客攻击,我个人想避免出于维护目的...
在那种情况下,有没有人想出从 Visual Studio 发布的正确方法?
不确定发生了什么,但这次在创建另一个发布配置文件时,我的 .csproj
更新为在 Project
标签中添加 ;Microsoft.NET.Sdk.Publish
。有了这个额外的 SDK 参考,发布工作正常。
.csproj
先前更新(无效)
<Project Sdk="Microsoft.NET.Sdk">
.csproj
更新后(有效)
<Project Sdk="Microsoft.NET.Sdk;Microsoft.NET.Sdk.Publish">
由于 WebJobs SDK v3.0.0
正式发布,我刚刚将我的网络作业迁移到 netcoreapp2.1
。迁移进行得很顺利,但我无法再找出将这些内容从 Visual Studio 发布到 Azure 的正确方法。
这里有几次尝试都失败了:
使用 SDK
v2.x.x
,我使用Microsoft.Web.WebJobs.Publish
NuGet 包来获取额外的右键单击上下文条目Publish as WebJobs...
。 现在添加这个包不再添加上下文条目。我尝试了经典的
Publish...
选项。这个似乎已经以某种方式更新以支持 webjobs,因为我可以 select 对话框中的一些选项,如 webjobs 名称或类型(Continuous
或Triggered
)。问题是发布在那种情况下什么都不做(文件根本没有推送到我的网络应用程序)。我尝试通过使用此新流程创建新配置文件来混合这两个选项,同时仍在
Properties
文件夹中添加 NuGetMicrosoft.Web.WebJobs.Publish
和webjob-publish-settings.json
文件我的项目。在那种情况下,上下文菜单仍未显示,但经典Publish...
至少现在将一些文件推送到我的网络应用程序。这种情况下的问题是 Kudo 似乎没有将其检测为网络作业,也没有 运行 它。我尝试更新发布配置文件以强制发布过程生成
EXE
文件(控制台 netcoreapp.2.1 默认为DLL
文件)。这仍然没有用。发布过程在发布目录中为目标平台创建一个新的子文件夹并在其中创建EXE
但我认为 Kudu 不会扫描子文件夹以查找 webjobs 可执行文件。
最后我找到了 that article,它充满了黑客攻击,我个人想避免出于维护目的...
在那种情况下,有没有人想出从 Visual Studio 发布的正确方法?
不确定发生了什么,但这次在创建另一个发布配置文件时,我的 .csproj
更新为在 Project
标签中添加 ;Microsoft.NET.Sdk.Publish
。有了这个额外的 SDK 参考,发布工作正常。
.csproj
先前更新(无效)
<Project Sdk="Microsoft.NET.Sdk">
.csproj
更新后(有效)
<Project Sdk="Microsoft.NET.Sdk;Microsoft.NET.Sdk.Publish">