使用C#代码在Blob容器创建时创建和部署Azure函数

时间:2020-04-02 12:16:39

标签: c# azure .net-core azure-functions azure-storage-blobs

我有一个(.net core C#)API,可以处理图片上传,检索,删除等操作。图片上传到Blob容器中,这些容器是根据代码动态创建的,其名称由POST请求在上传时提供图片。在Azure中还部署了一个Blob触发功能,以为给定Blob容器上传的每个图像创建大小调整后的低质量图像。需要为创建的每个新容器复制此图像调整大小功能应用程序。如果重复,则需要将新容器名称绑定为图像调整大小功能应用程序新实例的源容器和目标容器,并将其部署在与第一个功能应用程序相同的资源组中。

我可以通过C#代码实现所有这些目的吗?如果不是来自代码,我该怎么办?

1 个答案:

答案 0 :(得分:1)

我认为您应根据需要尝试EventGrid。下图为您提供了一个高思路,您可以根据自己的业务需求更改某些组件。

enter image description here

EventGrid主题内置有存储帐户,因此您无需单独创建。

enter image description here

您可以过滤要收听的事件。

enter image description here

然后,您可以将消息路由到适当的端点(Azure函数或队列)

enter image description here

如果将调整大小的图像存储在相同的存储帐户中,则将获得这些图像的事件,您可以添加一些逻辑以从函数中过滤这些图像。

当Blob触发器存在一些延迟问题时,EventGrid将不会遇到任何latency问题。