Функция не работает так, как мое консольное приложение читает очередь служебной шины - PullRequest
0 голосов
/ 11 января 2020

Надеюсь, это не "тупой" вопрос.

Создано консольное приложение для публикации, а затем получения сообщений из очереди служебной шины. работает без проблем.

Создана и функция VS, и одна на портале Azure ... не работает. Если только мое консольное приложение не прочитало одно сообщение из этой очереди. Так, если, скажем, было добавлено 5 сообщений, консоль получит одно случайное; функция получит остальные 4, но НЕ, пока мое консольное приложение не прочитает хотя бы одно ... немного озадаченно.

1 Ответ

0 голосов
/ 11 января 2020

, кажется, проблема установки между вашей Azure функцией и вашей Azure служебной шиной. Я предполагаю, что вы используете триггер служебной шины, поэтому дважды проверьте, совпадает ли имя, которое вы определили в функции, с файлом конфигурации:

using System;

public static void Run(string myQueueItem,
    Int32 deliveryCount,
    DateTime enqueuedTimeUtc,
    string messageId,
    TraceWriter log)
{
    log.Info($"C# ServiceBus queue trigger function processed message: {myQueueItem}");

    log.Info($"EnqueuedTimeUtc={enqueuedTimeUtc}");
    log.Info($"DeliveryCount={deliveryCount}");
    log.Info($"MessageId={messageId}");
}

function. json

{
"bindings": [
    {
    "queueName": "testqueue",
    "connection": "MyServiceBusConnection",
    "name": "myQueueItem",
    "type": "serviceBusTrigger",
    "direction": "in"
    }
],
"disabled": false
}
...