AWS DynampDB QueryAsyncメソッドの返り値にItemsが見つからない場合の対処方法

c# で DynamoDB のデータを抽出するとき、QueryAsyncを使用し、Itemsプロパティを使いたいことがあるとします。

## エラーが発生するコードとエラーメッセージ


var response = client.QueryAsync(request);

foreach (Dictionary<string, AttributeValue> item in response.Items)
{
    …
}

上記のコードでは、以下のエラーが発生します。

'Task<QueryResponse>' does not contain a definition for 'Items' and no accessible extension method 'Items' accepting a first argument of type 'Task<QueryResponse>' could be found (are you missing a using directive or an assembly reference?)

原因と対処方法

原因は、awaitの記入漏れです。

client.QueryAsyncawait で呼び出す必要があります。

対処後のコード


var response = await client.QueryAsync(request);

foreach (Dictionary<string, AttributeValue> item in response.Items)
{
    …
}

速攻でメモできる QuickNote リリースしました!

QuickNoteは動作が超軽量でサクサクかけるノートアプリです。一瞬の閃きを逃さずにノートを開き書き始めることができます。 アカウント登録も不要です。お試しあれ!

Excel操作をコマンドで! proBoarderExcel

Excelはマウスで操作するのが基本ですが、マウス操作に疲れてはいませんか? キーボードでExcel操作ができるようになるアプリです。オープンソースで無料です。

積み上げ! Daily Stack リリースしました!

Daily Stack は日々の積み上げを管理するToDoアプリです。過去の積み上げの振り返りだけでなく、ツイート機能もあります。 アカウント登録不要ですぐに使い始めることができます。

ExecNote.app リリースしました!

ExecNoteは、コードが実行できるMarkdownアプリケーションです。Markdownドキュメント内に記載したコードをクリックすると実行ができます。わざわざターミナルを 起動させる必要がありません!無料ですのでもしよければダウンロードをお願いします。

About Me

11年目のシステムエンジニアです。アプリで生活や仕事を改善したい🐱仕事効率化、自動化のアプリ開発が得意です、ご相談ください。 🚀エンタメ系アプリの開発も模索中🐬社内SEや個人アプリ開発者、システムエンジニアになりたい人と繋がりたい🐱