Пожалуйста, проверьте этот документ о ICollector: ICollector с очередью хранилища Azure .
ICollector и IAsyncCollector могут использоваться в качестве типов параметров для выходных привязок очереди хранения.
На данный момент привязка функции Azure поддерживает только привязку вывода для записи сообщений в очередь.Или Вы можете использовать триггер очереди для извлечения сообщения, если вам не нужно вызывать его с помощью HTTP-запроса.
Если вам нужно использовать HTTP-запрос, предположим, что вам нужно создать функцию триггера HTTP, а затем получить и удалитьочередь для реализации действия удаления из очереди, как показано ниже:
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
log.LogInformation("C# HTTP trigger function processed a request.");
// Parse the connection string and return a reference to the storage account.
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(Environment.GetEnvironmentVariable("AzureWebJobsStorage"));
CloudQueueClient queueClient = storageAccount.CreateCloudQueueClient();
// Retrieve a reference to a queue
CloudQueue queue = queueClient.GetQueueReference("myqueue");
// Async dequeue the message
CloudQueueMessage retrievedMessage = await queue.GetMessageAsync();
Console.WriteLine("Retrieved message with content '{0}'", retrievedMessage.AsString);
//Process the message in less than 30 seconds, and then delete the message
await queue.DeleteMessageAsync(retrievedMessage);
return (ActionResult)new OkObjectResult(retrievedMessage.AsString);
}