LoginSignup
3
2

More than 5 years have passed since last update.

C#でAlexa用のテーブルからデータを取得。(高レベルAPIを使って)

Posted at

はじめに

DynamoDBにC#を使ってテーブルを作成し、データを追加するところまでできるようになりました。

次はテーブルのデータを取得する方法です。
公式にも説明があるので、そちらも参照してください。

データの取得

まずはAmazonDynamoDBClientのインスタンスを作成し、目的のテーブルのインスタンスを取得します。

            AmazonDynamoDBClient client = new AmazonDynamoDBClient(); //これを介してDynamoDBにアクセスする

           //目的のテーブルを取得
            var table = Table.LoadTable(client, tableName);

            //id(プライマリキー)がtestUserであるレコードを取得する
            var result3 = table.GetItemAsync("testUser").Result;

            //そのレコードのattributes列に格納されているデータをDocument型で取得。
            var attrData = result3["attributes"].AsDocument();
            //Document型のattrDataから「sign」をキーにして値を取得。
            var sign=attrData["sign"];
            #endregion

            //手抜き確認。
            //Versionにsignを入れて確認する。。。
            return new SkillResponse
            {
                Version = sign,
                Response = new ResponseBody()
            };

さて、これを実行してVisual Studioでテスト実行してみると、レスポンスのJSON内のVersionに「ふたご座」が入っており、値が取得できていることが確認できます。

image.png

おわりに

これで、テーブル作成、データの追加、データの取得の方法がわかりました。

これで、本当に、今度こそ、公式チュートリアル第4回をC#でやります。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2