簡體   English   中英

Azure函數隊列觸發器

[英]Azure function Queue Trigger

我如何創建一個隊列觸發器,它可以將隊列中的項目集合作為觸發器。

我當前的隊列觸發器看起來像

   public static async Task Run(
        [QueueTrigger("socmapping")]
        SocMapping myQueueItem,
        [Queue("socmapping-invalid")]
        IAsyncCollector<SocMapping> invalidSocMappings,
        TraceWriter log,
        [Queue("projectedavfeedforsocmapping")]
        IAsyncCollector<ProjectedVacancySummary> projectedVacancySummary,
        [DocumentDB("AVFeedAudit", "AuditRecords", ConnectionStringSetting = "AVAuditCosmosDB")]
        IAsyncCollector<AuditRecord<object, object>> auditRecord)

但是我想要類似的東西(它可以從Queue中接收n個項目)[ 下面的代碼引發異常,並說它是json數組 ]

  public static async Task Run(
        [QueueTrigger("socmapping")]
        ***List<SocMapping> myQueueItem,***
        [Queue("socmapping-invalid")]
        IAsyncCollector<SocMapping> invalidSocMappings,
        TraceWriter log,
        [Queue("projectedavfeedforsocmapping")]
        IAsyncCollector<ProjectedVacancySummary> projectedVacancySummary,
        [DocumentDB("AVFeedAudit", "AuditRecords", ConnectionStringSetting = "AVAuditCosmosDB")]
        IAsyncCollector<AuditRecord<object, object>> auditRecord)

因為我想做隊列項以及函數的批處理,所以只有在隊列中存在任何項時才應觸發。 要從隊列中取出(10)並處理觸發函數。

我怎樣才能做到這一點?

這是不可能的。 每個隊列中的每條消息都會觸發一次Azure函數。 某些觸發器類型支持批處理參數(例如,事件中心或Cosmos DB),但是隊列觸發器不是其中之一。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM