【发布时间】:2016-04-07 03:20:31
【问题描述】:
我正在尝试创建一个由每个步骤的 QueueTrigger 处理的多步骤流程。如何在没有每个状态的队列的情况下过滤 QueueMessage 对象的“状态”属性? 消息类型:
public partial class TaskType{
string BlobPathToProcess {get; set;}
int State {get; set;}
}
public static void Task(
[QueueTrigger(queueName: "taskq")] TaskType msg
TextWriter log,
IBinder binder)
{
//currently I use a switch statement on (TaskType.State == 1)
所以不是:
[QueueTrigger(queueName: "taskqstate1")] TaskType msg
[QueueTrigger(queueName: "taskqstate2")] TaskType msg
等等
也许像@pranav-rastogi 说关于MSDN Ch9 cloud cover at min 24 上的Singleton attribute
[Singleton(@"{Region}\{Zone}"]
public static void Task([QueueTrigger(singleto-test")] WorkItem workItem, ...
其中 {Region} 和 {Zone} 是“workItem”对象的属性。
更像:
[PocoFilter(PocoProperty="{State}", PocoValue="1"]
public static void Task1([QueueTrigger(queueName: "taskq")] TaskType msg ...
[PocoFilter(PocoProperty="{State}", PocoValue="2"]
public static void Task2([QueueTrigger(queueName: "taskq")] TaskType msg ...
【问题讨论】:
-
要创建工作流,您可以使用 servicebus 主题并使用 sqlfilter 创建订阅。我明天会发布答案
标签: azure azure-webjobs azure-webjobssdk