C# 为什么我的计时器是';未检测到my Azure WebJob应用程序中的d函数?

C# 为什么我的计时器是';未检测到my Azure WebJob应用程序中的d函数?,c#,azure,azure-webjobs,C#,Azure,Azure Webjobs,我有一个Azure WebJob控制台应用程序,它无法识别我设置的TimerTrigger 我有Visual Studio生成的默认Program.cs: class Program { static void Main() { var config = new JobHostConfiguration(); if (config.IsDevelopment) { config.UseDevelopmentSettings(); }

我有一个Azure WebJob控制台应用程序,它无法识别我设置的
TimerTrigger

我有Visual Studio生成的默认
Program.cs

class Program
{
  static void Main()
  {
    var config = new JobHostConfiguration();

    if (config.IsDevelopment)
    {
      config.UseDevelopmentSettings();
    }

    var host = new JobHost();

    host.RunAndBlock();
  }
}
我将新函数添加到
Functions.cs

public static void MyFunction([TimerTrigger("0 */2 * * * *",
                                            RunOnStartup = true)]
                              TimerInfo timerInfo,
                              TextWriter log)
{
  log.WriteLine("MyFunction started!");
}
(我安装了
WebJobs.Extensions
NuGet包,所以我的代码编译得很好。)

我还添加了这一行:

config.UseTimers();
到中提到的
Main
函数,但由于某些原因,我的新函数仍未触发

启动应用程序时,我看到以下输出:

找到了以下函数:
MyNamespace.Functions.ProcessQueueMessage
作业主机已启动
所以它没有看到我的新函数


为什么会发生这种情况,我如何修复它?

将我的
程序.cs
的内容与其他人在网上发布的内容(包括)进行比较后,我发现有一点不同

Main
功能中,我更改了:

var host = new JobHost();
致:


它成功了。我确信我以前没有改变这一点,所以这显然是Azure WebJob模板中的一个bug。

同样适用于任何其他面临此问题的人。。计时器触发器位于
Microsoft.Azure.WebJobs.Extensions
nuget包中
var host = new JobHost(config);