我如何包含" settings.job"发布(从Visual Studio)Azure WebJob时的文件?

时间:2015-10-21 14:40:47

标签: azure-webjobs

我有一个连续的WebJob,我想配置它只有一个实例。

这是通过将" {" is_singleton":true}"设置在" settings.job"文件。

How to Run a Continuous WebJob as a Singleton

我正在努力解决的问题是部署这样的文件。

我链接的文章建议您必须手动将此文件放在WebJob文件夹的根目录中。

  

"添加此行后,将settings.job文件保存到连续WebJob的根文件夹中。"

该目录在部署之前不会存在,因此在部署之后,可能会有多个实例在运行,因为它没有该设置文件。所以我需要在WebJob中添加一些内容来检查单个实例设置是否存在以及它是否不会运行?

这似乎很蹩脚......

同一篇文章的确建议使用WebJobs API,但这并不是内置于发布过程中的,因此它是一个手动步骤或在WebJob本身运行的一些奇怪的代码。 / p>

我觉得我必须错过一种方法来解决这个问题。

我在Google上搜索过那些做过同样事情的人,但我找不到多少。

2 个答案:

答案 0 :(得分:16)

请尝试以下方法:

  • 在VS中,在WebJobs控制台应用程序的根目录中添加settings.job文件
  • 在文件的属性下,将其标记为“如果更新则复制”(或始终复制)

它应该部署。在此处查找完整示例:https://github.com/davidebbo-test/WebAppWithWebJobsVS

答案 1 :(得分:-1)

我将settings.job添加到每个Web作业的各自bin文件夹+“始终复制”设置中 - 然后从Visual Studio执行Azure发布。工作了一个魅力。

需要重新启动我的Azure应用程序才能获取此内容。