private async Task DeleteAllItemsAsync()
        {
            // scan for all records
            var scanRequest = new ScanRequest {
                TableName = TableName
            };

            do
            {
                var scanResponse = await DynamoClient.ScanAsync(scanRequest);

                // delete each returned item
                foreach (var item in scanResponse.Items)
                {
                    await DynamoClient.DeleteItemAsync(new DeleteItemRequest {
                        TableName = TableName,
                        Key       =
                        {
                            ["PK"] = item["PK"],
                            ["SK"] = item["SK"]
                        }
                    });
                }
                scanRequest.ExclusiveStartKey = scanResponse.LastEvaluatedKey;
            } while(scanRequest.ExclusiveStartKey.Any());
        }
Esempio n. 2
0
        public async Task <IActionResult> Delete(string id)
        {
            var deleteItemResponse = await DynamoClient.DeleteItemAsync(_tableName, new Dictionary <string, AttributeValue>
            {
                { "Uuid", new AttributeValue {
                      S = id
                  } }
            }, ReturnValue.ALL_OLD);

            if (deleteItemResponse.Attributes.Count == 0)
            {
                return(NotFound());
            }

            return(new NoContentResult());
        }