如何使用 node.js Azure Functions 命中 Table 存储来执行更新插入?

How do you perform an upsert with a node.js Azure Function hitting Table Storage?

我有一个用 node 编写的 Azure 函数。js/JavaScript 我正在尝试更新一个实体,但出现以下错误:

Exception while executing function: Functions.WebHook-Update. Microsoft.Azure.WebJobs.Host: Error while handling parameter _binder after function returned:. Microsoft.WindowsAzure.Storage: 1:The specified entity already exists.

如何让绑定执行更新插入而不是插入?

底层 Table 绑定目前不支持更新语义,仅支持 query/add。这适用于 Functions 支持的所有语言,因为所有语言都使用相同的底层绑定。

在 C# 函数的上下文中,还有另一个关于此的 SO 问题 。如您所见,目前的指导是拉入存储SDK来执行更新。这也适用于 Node。

一般来说,Functions 绑定模型为各种 Azure 服务带来的简单性有其局限性。我们尽量简化常见任务,但总会有一些场景需要您 "drop down" 并使用原始 SDK。