【问题标题】:DynamoDBContext does not have Save() methodDynamoDBContext 没有 Save() 方法
【发布时间】:2019-03-23 16:06:32
【问题描述】:

我是 AWS 服务器少编程的新手。 我正在尝试使用无服务器架构来跟踪示例。

http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBContext.ArbitraryDataMapping.html

但我在 DynamoDBContext 类中找不到 Save() 方法,它只包含 SaveAsync()。谁能告诉我这是为什么?

【问题讨论】:

  • 您是否检查过是否拥有最新版本的 AWS 库?
  • @TrentBartlem 是的,我已经检查了最新版本。我相信无服务器 lambda 应用程序无法使用常规方法与 DuynamoDB 进行通信,因此我不得不使用 SaveAsync()。

标签: .net amazon-web-services amazon-dynamodb serverless-framework


【解决方案1】:

我已经检查了最新版本。我相信无服务器 lambda 应用程序无法使用普通方法与 DynamoDB 进行通信,因此我不得不使用 SaveAsync()。 ——

【讨论】:

    【解决方案2】:

    .NET Core 版本只有 async 的原因是因为 .NET Core 中可用的底层 http 客户端只支持异步操作。我们讨论过将同步方法保留在 .NET Core 版本中,让它们只调用异步版本然后阻塞。这样做的问题是 SDK 不会遵循平台的最佳实践,更重要的是它可能掩盖潜在的性能问题。

    https://github.com/aws/aws-sdk-net/issues/480#issuecomment-257382757

    AWS 团队建议:

    public async Task<Response> ProcessS3ImageResizeAsync(SimpleS3Event input)
    {
       var response = await client.DoAsyncWork(input);
       return response;
    }
    

    更多详情请访问:https://docs.aws.amazon.com/lambda/latest/dg/dotnet-programming-model-handler-types.html#dot-net-async

    【讨论】:

      猜你喜欢
      • 2020-12-09
      • 1970-01-01
      • 2015-08-22
      • 2020-03-29
      • 1970-01-01
      • 2012-07-31
      • 1970-01-01
      • 2021-02-24
      • 1970-01-01
      相关资源
      最近更新 更多