Веб-вакансии с триггером таймера - PullRequest
0 голосов
/ 08 мая 2020

У меня есть веб-задание, которое прослушивает две разные очереди, и вместо того, чтобы писать в Functions.cs мой код (тот, который я унаследовал) выглядит так.

 UnityContainer container = RegisterContainers();      
        var config = new JobHostConfiguration
        {
            JobActivator = new UnityResolver(container)
        };           
        var host = new JobHost(config);
        ScheduledQueueListener schedulerQueueListener = container.Resolve<ScheduledQueueListener>();
        Thread schedulerQueueThread = new Thread(schedulerQueueListener.Listen);
        schedulerQueueThread.Start();
        Thread genericQueueThread = new Thread(schedulerQueueListener.GenericQueueListen);
        genericQueueThread.Start();
        host.RunAndBlock();
    }

Теперь переходим к моей проблеме. Я надеялся создать timertrigger в Function.cs, как упоминалось здесь Timer Trigger , который входит в nuget Microsoft. Azure .WebJobs.Extensions, и он нарушает текущий код, так как после установки Nuget JoHostConfiguration не Есть ли что-нибудь, что я могу сделать в веб-задании вместо того, чтобы добавлять функцию azure scheduler / az в pu sh сообщение для уже прослушивающих очередей

1 Ответ

1 голос
/ 09 мая 2020

Библиотеки Azure WebJob значительно изменились с 1.x / 2.x до 3.x. Я предполагаю, когда вы установили пакет Nuget Microsoft. Azure .WebJobs.Extensions - вы выбрали последнюю версию, которая также обновит ваши другие пакеты WebJob до 3.x. В 3.x JobHostConfiguration был заменен.

Если вы вернетесь к своему рабочему коду, а затем установите последнюю версию 2.x пакета Nuget Microsoft. Azure .WebJobs.Extensions, вы сможете использовать атрибут TimerTrigger без нарушения конфигурации JobHostConfiguration code.

Подробнее здесь - https://docs.microsoft.com/en-us/azure/app-service/webjobs-sdk-how-to#webjobs -host

...