

# .NET コード例
<a name="CodeSamples.DotNet"></a>

**Topics**
+ [.NET: AWS 認証情報の設定](#CodeSamples.DotNet.Credentials)
+ [.NET: AWS リージョンとエンドポイントの設定](#CodeSamples.DotNet.RegionAndEndpoint)

このガイドには、.NET コードスニペットとすぐに使用できるプログラムが含まれています。これらのコード例は、次のセクションで確認することができます。
+ [DynamoDB での項目と属性の操作](WorkingWithItems.md)
+ [DynamoDB でのテーブルとデータの操作](WorkingWithTables.md)
+ [DynamoDB のテーブルに対するクエリの実行](Query.md)
+ [DynamoDB でのテーブルのスキャン](Scan.md)
+ [DynamoDB でのセカンダリインデックスを使用したデータアクセス性の向上](SecondaryIndexes.md)
+ [DynamoDB での .NET ドキュメントの操作](DotNetSDKMidLevel.md)
+ [.NET オブジェクト永続性モデルと DynamoDB の使用](DotNetSDKHighLevel.md)
+ [DynamoDB Streams の変更データキャプチャ](Streams.md)

AWS SDK for .NET と Toolkit for Visual Studio を使用すると、すぐに始めることができます。

**.NET サンプルコードを実行するには (Visual Studio を使用)**

1. [Microsoft Visual Studio](https://www.visualstudio.com) をダウンロードし、インストールします。

1. (オプション) [Toolkit for Visual Studio](https://aws.amazon.com/visualstudio/) をダウンロードしてインストールします。

1. AWS 認証情報をセットアップします。共有 AWS 認証情報ファイル (`~/.aws/credentials`) で認証情報プロファイルを設定します。詳細については、「*AWS SDK for .NET デベロッパーガイド*」の「[AWS 認証情報の設定](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/net-dg-config-creds.html)」を参照してください。

1. Visual Studio を起動します。**[File]** (ファイル)、**[New]** (新規)、**[Project]** (プロジェクト) の順に選択します。

1. **[コンソールアプリ]** を検索し、.NET をターゲットとする C\$1 テンプレートを選択し、**[次へ]** を選択します。プロジェクト名と場所を設定し、**[作成]** を選択します。

1. プロジェクトに DynamoDB NuGet パッケージ用 AWS SDK を追加します。

   1. ソリューションエクスプローラーで、プロジェクトのコンテキスト (右クリック) メニューを開いて、**[Manage NuGet Packages]** (NuGet パッケージの管理) を選択します。

   1. NuGet パッケージマネージャーで、**[Browse]** (参照) を選択します。

   1. 検索ボックスに「**AWSSDK.DynamoDBv2**」と入力し、完了するまで待ちます。

   1. **AWSSDK.DynamoDBv2**、**[Install]** (インストール) の順に選択します。

1. Visual Studio プロジェクトで、`Program.cs` を開きます。内容を、実行するドキュメントページのコード例に置き換えます。

1. コードを実行するには、Visual Studio ツールバーの **[Start]** (開始) を選択します。

SDK for .NET には、DynamoDB を操作するためにスレッドセーフなクライアントが用意されています。ベストプラクティスとして、ご利用のアプリケーションでクライアントを 1 つ作成し、そのクライアントをスレッド間で再利用します。

詳細については、「[AWS SDK for .NET](https://aws.amazon.com/sdk-for-net)」を参照してください。

**注記**  
このガイドのサンプルコードは、最新バージョンの AWS SDK for .NET で使用するためのものです。

## .NET: AWS 認証情報の設定
<a name="CodeSamples.DotNet.Credentials"></a>

SDK for .NET では、ランタイムにアプリケーションに AWS 認証情報を指定する必要があります。このガイドのコード例は、SDK ストアを使用して AWS 認証情報ファイルを管理することを前提としています。詳細については、「*AWS SDK for .NET デベロッパーガイド*」の「[SDK ストアの使用](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/net-dg-config-creds.html#sdk-store)」を参照してください。

Toolkit for Visual Studio では、任意の数のアカウントの複数セットの認証情報がサポートされています。各セットは*プロファイル*と呼ばれています。Visual Studio では、プロジェクトの `App.config` ファイルにエントリを追加するため、アプリケーションはランタイム時に AWS 認証情報を見つけることができます。

次の例は、Toolkit for Visual Studio を使用した新しいプロジェクトの作成時に生成されたデフォルトの `App.config` ファイルを示しています。

```
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
    <add key="AWSProfileName" value="default"/>
    <add key="AWSRegion" value="us-west-2" />
 </appSettings>
</configuration>
```

ランタイム時に、このプログラムは `AWSProfileName` エントリで指定されているように、AWS 認証情報の `default` セットを使用します。AWS 認証情報自体は、暗号化されたフォームで SDK ストアに保持されます。Toolkit for Visual Studio は、すべて Visual Studio 内からの認証情報を管理するためのグラフィカルユーザーインターフェイスを使用します。詳細については、「*AWS Toolkit for Visual Studio ユーザーガイド*」の「[認証情報の指定](https://docs.aws.amazon.com/AWSToolkitVS/latest/UserGuide/tkv_setup.html#creds)」を参照してください。

**注記**  
デフォルトでは、コード例は、米国西部 (オレゴン) リージョンの DynamoDB にアクセスします。リージョンを変更するには、App.config ファイルで `AWSRegion` エントリを変更します。`AWSRegion` を DynamoDB が利用可能なすべてのリージョンに設定します。リージョンのリストについては、「*Amazon Web Services 全般のリファレンス*」の「[AWS リージョンとエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html#ddb_region)」を参照してください。

## .NET: AWS リージョンとエンドポイントの設定
<a name="CodeSamples.DotNet.RegionAndEndpoint"></a>

デフォルトでは、コード例は、米国西部 (オレゴン) リージョンの DynamoDB にアクセスします。リージョンを変更するには、`AWSRegion` ファイルで `App.config` エントリを変更します。または、`AmazonDynamoDBClient` プロパティを変更してリージョンを変更することもできます。

次のサンプルコードは、新しい `AmazonDynamoDBClient` をインスタンス化します。クライアントは、別のリージョンでコードが DynamoDB に対して実行するように変更されます。

```
AmazonDynamoDBConfig clientConfig = new AmazonDynamoDBConfig();
// This client will access the US East 1 region.
clientConfig.RegionEndpoint = RegionEndpoint.USEast1;
AmazonDynamoDBClient client = new AmazonDynamoDBClient(clientConfig);
```

リージョンのリストについては、「*Amazon Web Services 全般のリファレンス*」の「[AWS リージョンとエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html#ddb_region)」を参照してください。

ローカルコンピュータで DynamoDB を使用してサンプルコードを実行する場合は、エンドポイントを設定する必要があります。

```
AmazonDynamoDBConfig clientConfig = new AmazonDynamoDBConfig();
// Set the endpoint URL
clientConfig.ServiceURL = "http://localhost:8000";
AmazonDynamoDBClient client = new AmazonDynamoDBClient(clientConfig);
```