I mit Erhöhen eines Nummer Eigenschaftswert eines Artikels bereits gespeichert in meinem Tisch habe Schwierigkeiten aktuell DynamoDB mein Code:Inkrementieren Immobilien in AWS DynamoDB Objective C
AWSDynamoDBUpdateItemInput *updateItemInput = [AWSDynamoDBUpdateItemInput new];
updateItemInput.tableName = @"Table";
updateItemInput.key= @{
@"KeyPropertyName":@"KeyValue"
};
updateItemInput.updateExpression = @"SET(counter = counter + :val)";
updateItemInput.expressionAttributeValues [email protected]{
@":val":@1
};
AWSDynamoDB *dynamoDB = [AWSDynamoDB defaultDynamoDB];
[[dynamoDB updateItem:updateItemInput]
continueWithBlock:^id(AWSTask *task) {
if (task.error) {
NSLog(@"The request failed. Error: [%@]", task.error);
}
if (task.exception) {
NSLog(@"The request failed. Exception: [%@]", task.exception);
}
if (task.result) {
//Do something with result.
}
return nil;
}];
Meine app stürzt immer, wenn ich nicht tun Kommentiere die updateExpression und expressionAttributeValues aus. Ich kann den Block erreichen, wenn ich eine leere Instanz meines Elementtyps erstelle und seltsame Ergebnisse erhalte, wenn ich eine Instanz von AWSDynamoDBAttributeValue erstelle, um den Schlüssel zu übergeben. Irgendwelche Vorschläge? Schreibe ich auch falsch meine updateExpression?
Ich werde auch hinzufügen und löschen Elemente in Array/Liste und Wörterbuch/Karte Eigenschaften auf ein anderes Objekt. Wie würde das anders sein?
Wie stürzt es ab? Was ist die genaue Fehlermeldung, die Sie bekommen? –
und ja, der Update-Ausdruck sollte ohne Paranthesis sein, und Sie müssen möglicherweise auch den Attributnamen parametrisieren –
*** Beenden App aufgrund der nicht abgefangenen Ausnahme 'NSInvalidArgumentException', Grund: '+ [__ NSCFNumber JSONKeyPathsByPropertyKey]: unerkannter Selektor gesendet an Klasse 0x113d10368 ' – csweeney285