使用CreateBatchWrite的AWS DynamoDB

时间:2019-01-13 04:30:24

标签: c# amazon-dynamodb

使用.net core c#发电机数据库

我正在使用以下方法将其保存到我的dynamo数据库中:

public Task SaveAsync(T item)
{
    return base.SaveAsync(item, _config);
}

然后在我的控制器中,我将上述代码称为:

foreach (var data in myData)
{
   //update data
  await _dynamoDbManager.SaveAsync(data);
}

上面的方法工作正常,但我不想单独保存,而是想批量保存。

我不知道如何编写类似的Batch方法。我在下面尝试过:

public Task CreateBatch()
{
   //The below is not correct as I dont know what to pass as <T> in below call.
   return CreateBatchWrite<T>(_config);
}

我想创建上述方法,以便可以在控制器中按以下方式使用它:

var batchWriter =  CreateBatch();
foreach (var data in myData)
{
   //update data
}
batchWriter.AddPutItems(myData);
await batchWriter.ExecuteAsync();

任何人都可以帮助编写我的CreateBatchWrite方法。

1 个答案:

答案 0 :(得分:1)

您可以将方法创建为:

public BatchWrite<T> CreateBatch<T>()
{
   return CreateBatchWrite<T>(_config);
}

然后在您的控制器中将此调用为:

var batchWriter =  CreateBatch<MyData>();
batchWriter.AddPutItems(myData);
await batchWriter.ExecuteAsync();