Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Arbeiten mit DynamoDB-Tabellen im .NET
Sie können AWS SDK for .NET zum Erstellen, Aktualisieren und Löschen von Tabellen, Auflisten aller Tabellen in Ihrem Konto oder Abrufen von Informationen zu einer bestimmten Tabelle verwenden.
Nachfolgend sind die allgemeinen Schritte für Amazon DynamoDB-Tabellenoperationen mit AWS SDK for .NET aufgeführt.
-
Erstellen einer Instance der
AmazonDynamoDBClient
-Klasse (Client). -
Stellen Sie den erforderlichen und optionalen Parameter für die Operation bereit, indem Sie die entsprechenden Anforderungsobjekte erstellen.
Erstellen Sie beispielsweise ein
CreateTableRequest
-Objekt, um eine Tabelle aufzubauen, und einUpdateTableRequest
-Objekt zum Aktualisieren einer vorhandenen Tabelle. -
Führen Sie die entsprechende Methode aus, die von dem Client bereitgestellt wird, den Sie im vorherigen Schritt erstellt haben.
Anmerkung
Die Beispiele in diesem Abschnitt funktionieren nicht mit .NET Core, da keine synchronen Methoden unterstützt werden. Weitere Informationen finden Sie unter AWS-asynchrone APIs für .NET.
Themen
Erstellen einer Tabelle
Zum Erstellen einer Tabelle müssen Sie den Tabellennamen, den zugehörigen Primärschlüssel und die Werte des bereitgestellten Durchsatzes angeben.
So erstellen Sie eine Tabelle mit der AWS SDK for .NET-Low-Level-API
-
Erstellen Sie eine Instance der
AmazonDynamoDBClient
-Klasse. -
Erstellen Sie eine Instance der
CreateTableRequest
-Klasse, um die Anforderungsinformationen bereitzustellen.Sie müssen den Tabellennamen, den zugehörigen Primärschlüssel und die Werte des bereitgestellten Durchsatzes angeben.
-
Führen Sie die
AmazonDynamoDBClient.CreateTable
-Methode aus, indem das Anforderungsobjekt als Parameter festgelegt wird.
Im folgenden C#-Codebeispiel werden die vorherigen Schritte veranschaulicht. Im Beispiel wird eine Tabelle (ProductCatalog
) erstellt, die die Id
als Primärschlüssel und eine Reihe von Werten des bereitgestellten Durchsatzes verwendet. Je nach Anwendungsanforderungen können Sie die Werte des bereitgestellten Durchsatzes mit der UpdateTable
-API aktualisieren.
AmazonDynamoDBClient client = new AmazonDynamoDBClient(); string tableName = "ProductCatalog"; var request = new CreateTableRequest { TableName = tableName, AttributeDefinitions = new List<AttributeDefinition>() { new AttributeDefinition { AttributeName = "Id", AttributeType = "N" } }, KeySchema = new List<KeySchemaElement>() { new KeySchemaElement { AttributeName = "Id", KeyType = "HASH" //Partition key } }, ProvisionedThroughput = new ProvisionedThroughput { ReadCapacityUnits = 10, WriteCapacityUnits = 5 } }; var response = client.CreateTable(request);
Sie müssen warten, bis DynamoDB die Tabelle erstellt und den Tabellenstatus auf ACTIVE
gesetzt hat. Die CreateTable
-Antwort enthält die Eigenschaft TableDescription
, die die erforderlichen Tabelleninformationen bereitstellt.
Beispiel
var result = response.CreateTableResult; var tableDescription = result.TableDescription; Console.WriteLine("{1}: {0} \t ReadCapacityUnits: {2} \t WriteCapacityUnits: {3}", tableDescription.TableStatus, tableDescription.TableName, tableDescription.ProvisionedThroughput.ReadCapacityUnits, tableDescription.ProvisionedThroughput.WriteCapacityUnits); string status = tableDescription.TableStatus; Console.WriteLine(tableName + " - " + status);
Sie können auch die DescribeTable
-Methode des Clients aufrufen, um die Tabelleninformationen jederzeit abzurufen.
Beispiel
var res = client.DescribeTable(new DescribeTableRequest{TableName = "ProductCatalog"});
Aktualisieren einer Tabelle
Sie können nur Werte des bereitgestellten Durchsatzes einer vorhandenen Tabelle aktualisieren. Je nach Anforderung der Anwendung müssen Sie diese Werte ggf. aktualisieren.
Anmerkung
Sie können die Durchsatzkapazität so oft wie nötig erhöhen und gemäß bestimmter Beschränkungen senken. Weitere Informationen zu Durchsatzsteigerungen und -verringerungen pro Tag finden Sie unter Service-, Konto- und Tabellenkontingente in Amazon DynamoDB.
So erstellen Sie eine Tabelle mit der AWS SDK for .NET-Low-Level-API
-
Erstellen Sie eine Instance der
AmazonDynamoDBClient
-Klasse. -
Erstellen Sie eine Instance der
UpdateTableRequest
-Klasse, um die Anforderungsinformationen bereitzustellen.Sie müssen den Tabellennamen und die neuen Werte des bereitgestellten Durchsatzes angeben.
-
Führen Sie die
AmazonDynamoDBClient.UpdateTable
-Methode aus, indem das Anforderungsobjekt als Parameter festgelegt wird.
Im folgenden C#-Codebeispiel werden die vorherigen Schritte veranschaulicht.
Beispiel
AmazonDynamoDBClient client = new AmazonDynamoDBClient(); string tableName = "ExampleTable"; var request = new UpdateTableRequest() { TableName = tableName, ProvisionedThroughput = new ProvisionedThroughput() { // Provide new values. ReadCapacityUnits = 20, WriteCapacityUnits = 10 } }; var response = client.UpdateTable(request);
Löschen einer Tabelle
Führen Sie die folgenden Schritte aus, um eine Tabelle mithilfe der .NET Low-Level-API zu löschen.
So löschen Sie eine Tabelle mit der AWS SDK for .NET-Low-Level-API
-
Erstellen Sie eine Instance der
AmazonDynamoDBClient
-Klasse. -
Erstellen Sie eine Instance der
DeleteTableRequest
-Klasse und geben Sie den Namen der Tabelle an, die Sie löschen möchten. -
Führen Sie die
AmazonDynamoDBClient.DeleteTable
-Methode aus, indem das Anforderungsobjekt als Parameter festgelegt wird.
Im folgenden C#-Codebeispiel werden die vorherigen Schritte veranschaulicht.
Beispiel
AmazonDynamoDBClient client = new AmazonDynamoDBClient(); string tableName = "ExampleTable"; var request = new DeleteTableRequest{ TableName = tableName }; var response = client.DeleteTable(request);
Auflisten von Tabellen
Zum Auflisten der Tabellen in Ihrem Konto mit der AWS SDK for .NET-Low-Level API erstellen Sie eine Instance des AmazonDynamoDBClient
und führen die ListTables
-Methode aus.
Die ListTables-Operation erfordert keine Parameter. Sie können allerdings optionale Parameter angeben. Sie können z. B. den Parameter Limit
festlegen, wenn Sie die Paginierung verwenden möchten, um die Anzahl der Tabellennamen je Seite zu beschränken. Dazu müssen Sie ein ListTablesRequest
-Objekt erstellen und optionale Parameter angeben, wie im folgenden C#-Codebeispiel dargestellt. Mit der Anforderung wird neben dem Seitenformat der Parameter ExclusiveStartTableName
festgelegt. Anfänglich ist ExclusiveStartTableName
gleich null. Nach dem Abrufen der ersten Ergebnisseite müssen Sie zum Abrufen der nächsten Ergebnisseite diesen Parameterwert auf die Eigenschaft LastEvaluatedTableName
des aktuellen Ergebnisses festlegen.
Beispiel
AmazonDynamoDBClient client = new AmazonDynamoDBClient(); // Initial value for the first page of table names. string lastEvaluatedTableName = null; do { // Create a request object to specify optional parameters. var request = new ListTablesRequest { Limit = 10, // Page size. ExclusiveStartTableName = lastEvaluatedTableName }; var response = client.ListTables(request); ListTablesResult result = response.ListTablesResult; foreach (string name in result.TableNames) Console.WriteLine(name); lastEvaluatedTableName = result.LastEvaluatedTableName; } while (lastEvaluatedTableName != null);