Azureテーブルから特定のフィールド値を取得します
-
29-09-2019 - |
質問
次のコードは常に例外をスローします
....
DataServiceContext ctx = account.CreateCloudTableClient().GetDataServiceContext();
var val = (from t in ctx.CreateTable<MyClass>("TableName")
select new {testval = t.id}).FirstOrDefault();
エンティティを読んだ場合、それは正常に機能します:
var val = (from t in ctx.CreateTable<MyClass>("TableName")
select t).FirstOrDefault();
Azure Tableから1つのフィールド(またはいくつか、エンティティを読みたくない)を読むことは不可能ですか?
前もって感謝します。
アップデート:
例外データ:System.Data.Services.Client.DataServiceQueryException。
メッセージ - 「このリクエストの処理中にエラーが発生しました。」
内部例外 - コード:「InvalidInput」、メッセージ:「要求入力の1つは無効です。」
解決
現在の実装は、完全なエンティティの取得のみをサポートし、匿名のクラスをサポートしていないことを覚えているようです。
別のオプションは、完全なエンティティを取得し、匿名タイプに変換することです。この場合、実際に完全なエンティティを引っ張ってからそれらを変換し、実際に必要とされるよりも帯域幅の消費が増えることに注意してください。
所属していません StackOverflow