从队列触发器存储在 blob 存储中

store in blob storage from queue trigger

这个问题已经过编辑,因为我不太了解绑定在 azure 函数中的工作原理,而且我的问题格式不正确。

基本上,我想知道如何将 blob 写入必须由队列消息触发的博客存储(这意味着 blob 应该在 azure 队列触发器中创建,然后存储到 blob 存储) .

Tom Sun 给出了我期待的答案

如果您想通过队列触发器将队列消息存储到 Azure Blob,您可以使用 cloudAppendblob。下面是演示代码

[FunctionName("TestQueueTrigger")]
public static void Run([QueueTrigger("queueName", Connection = "AzureWebJobsStorage")]string myQueueItem,TraceWriter log)
{

   log.Info($"C# Queue trigger function processed: {myQueueItem}");
   CloudStorageAccount storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("AzureWebJobsStorage"));
   CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
   CloudBlobContainer container = blobClient.GetContainerReference("mycontainer");

// Create the container if it doesn't already exist.
   container.CreateIfNotExists();

   var appendBlob = container.GetAppendBlobReference("blobName.txt");

   if (!appendBlob.Exists())
   {
        appendBlob.CreateOrReplace();
        appendBlob.AppendText(myQueueItem);
   }
   else
   {
      appendBlob.AppendText($",{myQueueItem}");
   }


 }