2015-06-29 2 views
0

Я начинаю работу с Table Storage. У меня есть эмулятор (v4.0.0.0), который работает и может успешно создавать таблицы через код (я думаю, что использую v2.6 клиентских библиотек). Но я не могу вставлять объекты.Невозможно вставить объекты в новую таблицу с помощью эмулятора v4.0.0.0

В соответствии с этой статьей От 2010 (Azure Table Storage, what a pain in the ass) Мне нужно вставить фиктивный объект при первом использовании таблицы (применяется только к эмулятору).

Должен ли я сделать это для эмулятора хранения v4.0.0.0? В коде, представленном в статье, также используются члены, которые были обесценены, поэтому я предпочитаю не использовать их, если это возможно.

Update - Мне не удалось успешно назвать results = table.ExecuteBatch(b); которая провалилась на первом объекте, где, как result = table.Execute(b[0]); кажется работать. Похоже, мне нужно еще немного копать.

Update - это информация об ошибке я получаю через исключение:

Сообщение об ошибке: "Неожиданный код ответа для работы: 0"

  • RequestInformation.HttpStatusCode: 400
  • RequestInformation.ExtendedErrorInformation.ErrorCode: "InvalidInput"
  • RequestInformation.ExtendedErrorInformation.ErrorMessage "0: Один из входов запроса недействителен , RequestId: 6d740e0e-f013-4d29-a712-2942115e8e4d \ nВремя: 2015-06-29T20: 28: 05.5784120Z "
  • Stacktrace (snipped):" в 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(List 1 список) в C: \ ... \ AzureStorageDataProvider.cs:. линия 61"
+0

Какая ошибка при вызове Execute Пакетный? –

+0

Привет @ SerdarOzler-Microsoft - Вопрос обновлен, чтобы включить это. –

+0

Не могли бы вы проверить, сколько операций у вас в партии 'b'? –

ответ

3

Как также описано в нашей Performing Entity Group Transactions статье, организация групповых операций (партии) не может содержать более 100 объектов в сообщение об ошибке должно быть более ясным, поэтому я буду указывать это как ошибку, но сокращение количества объектов до < = 100 должно предотвращать возникшую ошибку.

+0

Спасибо, что сделал. Да, «InvalidInput» верен, но не так полезен, как может быть; и я обнаружил, что «неожиданный код ответа для операции: 0» немного вводит в заблуждение, так как я ожидал, что возникнет проблема с первым элементом. Все еще рады, что он разрешен, спасибо за помощь, - и я особенно рад, что «внес вклад в улучшение сообщений об ошибках». –

Смежные вопросы