0

私はテーブルストレージを使い始めています。エミュレーター (v4.0.0.0) が動作しており、コードを使用してテーブルを正常に作成できます (クライアント ライブラリの v2.6 を使用していると思います)。しかし、エンティティを挿入できないようです。

この記事 2010 年から ( Azure テーブル ストレージ、お尻の痛み) によると、初めてテーブルを使用するときにダミー エンティティを挿入する必要があります (エミュレーターにのみ適用されます)。

ストレージ エミュレーター v4.0.0.0 でもこれを行う必要がありますか? 記事で提供されているコードは、減価償却されたメンバーも使用しているため、可能であれば使用したくありません。

更新results = table.ExecuteBatch(b);-最初のエンティティで失敗したものを正常に呼び出すことができませんでしたresult = table.Execute(b[0]);。もう少し掘り下げる必要がありそうです。

更新- これは、例外によって得られるエラー情報です。

エラー メッセージ:「操作の予期しない応答コード: 0」

  • RequestInformation.HttpStatusCode: 400
  • RequestInformation.ExtendedErrorInformation.ErrorCode: "InvalidInput"
  • RequestInformation.ExtendedErrorInformation.ErrorMessage "0: リクエスト入力の 1 つが無効です。RequestId:6d740e0e-f013-4d29-a712-2942115e8e4d\nTime:2015-06-29T20:28:05.5784120Z"
  • Stacktrace (省略): " at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](RESTCommand 1 cmd, IRetryPolicy policy, OperationContext operationContext)\r\n at Microsoft.WindowsAzure.Storage.Table.TableBatchOperation.Execute(CloudTableClient client, CloudTable table, TableRequestOptions requestOptions, OperationContext operationContext)\r\n at Microsoft.WindowsAzure.Storage.Table.CloudTable.ExecuteBatch(TableBatchOperation batch, TableRequestOptions requestOptions, OperationContext operationContext)\r\n at Morphological.FinanceTracker.AzureDataProvider.AzureStorageDataProvider.SaveTransactionsToAzure(List1 list) in c:\...\AzureStorageDataProvider.cs:line 61"
4

1 に答える 1

3

エンティティ グループ トランザクションの実行に関する記事にも記載されているように、エンティティ グループ トランザクション (バッチ) には 100 を超えるエンティティを含めることはできません。エラー メッセージは間違いなくより明確になるはずなので、バグとして報告しますが、エンティティの数を 100 以下に減らすと、表示されているエラーを防ぐことができます。

于 2015-06-30T15:39:41.123 に答える