DynamoDB ConditionalCheckFailedException - 获取未通过测试的项目内容

Rub*_*ink 3 .net amazon-dynamodb aws-sdk-net

我在PutItemUpdateItem请求上使用前提条件表达式。

有没有办法实现以下任一或全部:

  1. 不抛出异常 - 这不是异常情况,而是预期情况;与外部输入的验证一样,我希望能够在不进行抛出和捕获的情况下检查结果 - 有没有办法实现这一点?

  2. 假设服务器刚刚读取数据以确定检查失败,是否可以让它返回数据,假设 RCU 已经支付,并且一般模式是之前/之后可以作为往返的一部分包含在内?或者这是一个真正硬性的服务端限制?希望看到权威的链接,因为我浏览过的任何文档都对此事保持沉默......

(我正在使用当前版本的 .NET SDK AWSSDK.DynamoDBv2NuGet 包。)

小智 6

自 2023 年 6 月 30 日起,DynamoDB 支持ReturnValuesOnConditionCheckFailure参数,该参数可返回写入尝试期间的项目副本,而无需在ConditionalCheckFailedException.

因此,现在期望的行为是可能的。