首页 文章

Azure Webjobs中找不到任何作业功能

提问于
浏览
5

试图让Azure Webjobs对传入的Service Bus事件作出反应,我通过点击F5来运行它 . 我在启动时收到错误 .

找不到工作职能 . 尝试公开您的工作类和方法 . 如果您正在使用绑定扩展(例如ServiceBus,Timers等),请确保您已在启动代码中调用扩展的注册方法(例如config.UseServiceBus(),config.UseTimers()等) .

我的函数类看起来像这样:

public class Functions
    {
        // This function will get triggered/executed when a new message is written 
        // on an Azure Queue called queue.
        public static void ProcessQueueMessage([ServiceBusTrigger("test-from-dynamics-queue")] BrokeredMessage message, TextWriter log)
        {
            log.WriteLine(message);
        }
    }

我将每个 class 和方法设置为公开

我在 program.cs 文件中调用 config.UseServiceBus();

我正在使用Microsoft.Azure.WebJobs v 1.1.2

((我不完全确定我已经编写了正确的AzureWebJobsDashboard-和AzureWebJobsStorage-connectionstrings,我从Azure门户网站中唯一的Azure存储设置中获取它们 . 如果这可能是问题,我应该在哪里获得它们))

1 回答

  • 23

    根据您提到的错误,似乎您错过了初始化JobHost的参数配置 . 如果是这种情况,请使用以下代码 .

    JobHost  host = new JobHost(config)
    

    有关如何将Azure Service Bus与WebJobs SDK一起使用的更多详细信息,请参阅该文档 . 以下是document的示例代码 .

    public class Program
    {
       public static void Main()
       {
          JobHostConfiguration config = new JobHostConfiguration();
          config.UseServiceBus();
          JobHost host = new JobHost(config);
          host.RunAndBlock();
       }
    }
    

相关问题