繁体   English   中英

如果项目不存在或其他字段等于特定值,则要更新的DynamoDB表达式

[英]DynamoDB expression to Update if item does not exist or other field equals certain value

尝试执行条件更新时出现以下错误:

ConditionExpression无效:语法错误; 令牌:“-”,附近:“ PageRouteee1181aa-8035”

我有以下课程:

public class RestaurantPageRouteItem
{
    [DynamoDBHashKey]
    public string PageRoute { get; set; }

    public string RestaurantId { get; set; }
}

我创建以下表达式:

new Expression
{
    ExpressionStatement = $"attribute_not_exists({item.PageRoute}) OR {item.RestaurantId} = :restaurantid",
    ExpressionAttributeValues =
    {
        [":restaurantid"] = item.RestaurantId
    }
}

设法提出以下建议:

new Expression {
 ExpressionStatement =
  "(attribute_not_exists(#ID) OR :id = #ID) OR " +
  "(attribute_not_exists(PageRoute))",
  ExpressionAttributeValues = {
   [":id"] = item.RestaurantId
  },
  ExpressionAttributeNames = {
   ["#ID"] = "RestaurantId"
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM