JSONdukungan di Amazon DynamoDB - AWS SDK for .NET

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

JSONdukungan di Amazon DynamoDB

catatan

Informasi dalam topik ini khusus untuk proyek berdasarkan. NETKerangka kerja dan AWS SDK for .NET versi 3.3 dan sebelumnya.

AWS SDK for .NET Mendukung JSON data saat bekerja dengan Amazon DynamoDB. Hal ini memungkinkan Anda untuk lebih mudah mendapatkan JSON -format data dari, dan memasukkan JSON dokumen ke dalam, tabel DynamoDB.

Dapatkan Data dari Tabel DynamoDB dalam Format JSON

Contoh berikut menunjukkan bagaimana untuk mendapatkan data dari tabel DynamoDB dalam format: JSON

// 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 // }

Dalam contoh sebelumnya, ToJson metode Document kelas mengkonversi item dari tabel menjadi string -format. JSON Item diambil melalui GetItem metode Table kelas. Untuk menentukan item yang akan didapatkan, dalam contoh ini, GetItem metode menggunakan kunci hash-and-range utama dari item target. Untuk menentukan tabel untuk mendapatkan item dari, LoadTable metode Table kelas menggunakan instance dari AmazonDynamoDBClient kelas dan nama tabel target di DynamoDB.

Masukkan JSON Format Data ke dalam Tabel DynamoDB

Contoh berikut menunjukkan bagaimana menggunakan JSON format untuk menyisipkan item ke dalam tabel 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);

Dalam contoh sebelumnya, FromJson metode Document kelas mengkonversi string JSON -format menjadi item. Item dimasukkan ke dalam tabel melalui PutItem metode Table kelas, yang menggunakan instance Document kelas yang berisi item. Untuk menentukan tabel untuk memasukkan item ke dalam, LoadTable metode Table kelas dipanggil, menentukan instance AmazonDynamoDBClient kelas dan nama tabel target di DynamoDB.

DynamoDB Jenis Data Konversi ke JSON

Setiap kali Anda memanggil ToJson metode Document kelas, dan kemudian pada JSON data yang dihasilkan Anda memanggil FromJson metode untuk mengubah JSON data kembali ke instance Document kelas, beberapa tipe data DynamoDB tidak akan dikonversi seperti yang diharapkan. Secara khusus:

  • DynamoDB set (SSNS,, BS dan jenis) akan dikonversi ke array. JSON

  • Skalar dan set biner DynamoDB (BBSdan tipe) akan dikonversi ke string atau daftar string yang dikodekan JSON base64.

    Dalam skenario ini, Anda harus memanggil DecodeBase64Attributes metode Document kelas untuk mengganti JSON data yang dikodekan base64 dengan representasi biner yang benar. Contoh berikut menggantikan atribut item skalar biner berkode base64 dalam contoh Document kelas, bernamaPicture, dengan representasi biner yang benar. Contoh ini juga melakukan hal yang sama untuk atribut item set biner yang dikodekan base64 dalam contoh kelas yang sama, bernama: Document RelatedPictures

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

Info Selengkapnya

Untuk informasi lebih lanjut dan contoh pemrograman JSON dengan DynamoDB dengan AWS SDK for .NET, lihat: