选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

Amazon DynamoDB 中的 JSON 支持 - SDK for .NET (版本 3)

的版本 4 (V4) SDK for .NET 正在预览中!要在预览版中查看有关此新版本的信息,请参阅 AWS SDK for .NET (版本 4 预览版)开发者指南

请注意,SDK 的 V4 处于预览版,因此其内容可能会发生变化。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

的版本 4 (V4) SDK for .NET 正在预览中!要在预览版中查看有关此新版本的信息,请参阅 AWS SDK for .NET (版本 4 预览版)开发者指南

请注意,SDK 的 V4 处于预览版,因此其内容可能会发生变化。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon DynamoDB 中的 JSON 支持

注意

本主题中的信息特定于基于.NET Framework 和 3.3 及更早 SDK for .NET 版本的项目。

使用亚马逊 DynamoDB 时 AWS SDK for .NET 支持 JSON 数据。这使您能够更轻松地从 DynamoDB 中获取 JSON 格式的数据以及将 JSON 文档插入到其中。

从 DynamoDB 表以 JSON 格式获取数据

以下示例显示了如何以 JSON 格式从 DynamoDB 表中获取数据:

// using Amazon.DynamoDBv2; // using Amazon.DynamoDBv2.DocumentModel; var client = new AmazonDynamoDBClient(); var table = Table.LoadTable(client, "AnimalsInventory"); var item = table.GetItem(3, "Horse"); var jsonText = item.ToJson(); Console.Write(jsonText); // Output: // {"Name":"Shadow","Type":"Horse","Id":3} var jsonPrettyText = item.ToJsonPretty(); Console.WriteLine(jsonPrettyText); // Output: // { // "Name" : "Shadow", // "Type" : "Horse", // "Id" : 3 // }

在上述示例中,Document 类的 ToJson 方法将表中的项目转换为 JSON 格式的字符串。项目通过 Table 类的 GetItem 方法检索。为了确定要获取的项目,在本示例中,该GetItem方法使用目标项目 hash-and-range的主键。为确定要从中获取项目的表,Table 类的 LoadTable 方法使用 AmazonDynamoDBClient 类的实例以及 DynamoDB 中的目标表名。

将 JSON 格式数据插入 DynamoDB 表

以下示例演示如何使用 JSON 格式将项目插入到 DynamoDB 表:

// using Amazon.DynamoDBv2; // using Amazon.DynamoDBv2.DocumentModel; var client = new AmazonDynamoDBClient(); var table = Table.LoadTable(client, "AnimalsInventory"); var jsonText = "{\"Id\":6,\"Type\":\"Bird\",\"Name\":\"Tweety\"}"; var item = Document.FromJson(jsonText); table.PutItem(item);

在上述示例中,FromJson 类的 Document 方法将 JSON 格式的字符串转换为项目。项目通过 PutItem 类的 Table 方法插入表中,该方法使用包含项目的 Document 类的实例。为确定要插入项目的表,调用 Table 类的 LoadTable 方法,并指定 AmazonDynamoDBClient 类的实例以及 DynamoDB 中的目标表名。

DynamoDB 数据类型转换为 JSON

当您调用 Document 类的 ToJson 方法,然后在生成的 JSON 数据上调用 FromJson 方法以将 JSON 数据转换回 Document 类的实例时,一些 DynamoDB 数据类型不会按预期转换。具体来说:

  • DynamoDB 集(SSNSBS 类型)将转换为 JSON 数组。

  • DynamoDB 二进制标量和集(BBS 类型)将转换为 base64 编码的 JSON 字符串或字符串列表。

    在此情况下,您必须调用 DecodeBase64Attributes 类的 Document 方法,使用正确的二进制表示形式替换 base64 编码的 JSON 数据。以下示例使用正确的二进制表示形式,在 Document 类的实例中,替换 base64 编码的名为 Picture 的二进制标量项目属性。此示例还在 Document 类的相同实例中,为名为 RelatedPictures 的 base64 编码二进制集项目属性执行相同的操作。

    item.DecodeBase64Attributes("Picture", "RelatedPictures");

更多信息

有关使用 DynamoDB 编程 JSON 的更多信息和示例, AWS SDK for .NET请参阅:

下一主题:

Amazon EC2

上一主题:

使用表达式
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。