【发布时间】:2017-09-06 13:22:25
【问题描述】:
我有一个包含多个容器的 Azure 存储帐户。我正在使用 BlobTrigger 函数来检测新的 blob。
现在这似乎工作得很好。但是 BlobTrigger 仅适用于一个容器。创建一个触发器 pr 容器似乎是个坏主意(我会复制很多代码)。
有什么办法可以简化吗?想法受到赞赏。
PS:我知道如果容器中有 10K 或更多 blob,则 BlobTrigger 是不可靠的(但这不是我的情况)。
【问题讨论】:
我有一个包含多个容器的 Azure 存储帐户。我正在使用 BlobTrigger 函数来检测新的 blob。
现在这似乎工作得很好。但是 BlobTrigger 仅适用于一个容器。创建一个触发器 pr 容器似乎是个坏主意(我会复制很多代码)。
有什么办法可以简化吗?想法受到赞赏。
PS:我知道如果容器中有 10K 或更多 blob,则 BlobTrigger 是不可靠的(但这不是我的情况)。
【问题讨论】:
有什么办法可以简化吗?想法受到赞赏。
Azure 存储 blob 触发器仅允许您监视一个存储容器以查找新的和更新的 blob。如果要在一个 Azure 存储帐户中监控多个容器,则需要创建多功能。
我建议你在一个方法中编写blob更改的处理逻辑,并在调用其他函数时调用此方法。
public static void ProcessBlob(string containerName, string blobName, CloudBlockBlob blob)
{
//Write your logic here
}
public static void ProcessBlobContainer1([BlobTrigger("container1/{blobName}")] CloudBlockBlob blob, string blobName)
{
ProcessBlob("container1", blobName, blob);
}
public static void ProcessBlobContainer2([BlobTrigger("container2/{blobName}")] CloudBlockBlob blob, string blobName)
{
ProcessBlob("container2", blobName, blob);
}
GitHub上有一个与您的问题相关的未解决问题,希望尽快解决。
Add ability to create blob triggers on a container names that match a pattern
【讨论】: