我試圖將10000條記錄插入到Azure表存儲中。我正在使用ExecuteAsync()來實現它,但不知怎的,插入了約7500條記錄,其餘記錄都丟失了。我故意不使用等待關鍵字,因爲我不想等待結果,只是想將它們存儲在表中。以下是我的代碼片段。Azure表存儲的ExecuteAsync()存儲無法插入所有記錄
private static async void ConfigureAzureStorageTable()
{
CloudStorageAccount storageAccount =
CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString"));
CloudTableClient tableClient = storageAccount.CreateCloudTableClient();
TableResult result = new TableResult();
CloudTable table = tableClient.GetTableReference("test");
table.CreateIfNotExists();
for (int i = 0; i < 10000; i++)
{
var verifyVariableEntityObject = new VerifyVariableEntity()
{
ConsumerId = String.Format("{0}", i),
Score = String.Format("{0}", i * 2 + 2),
PartitionKey = String.Format("{0}", i),
RowKey = String.Format("{0}", i * 2 + 2)
};
TableOperation insertOperation = TableOperation.Insert(verifyVariableEntityObject);
try
{
table.ExecuteAsync(insertOperation);
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
}
該方法的用法有什麼不正確?
如果您不等它完成,它可能無法完成(特別是如果您的過程退出)。而且你不會發現任何錯誤。 – SLaks
如果你不等它完成,它可能不會完成! – DavidG
你解決了這個問題,有沒有更新?您可以在控制檯應用程序中捕捉到詳細的異常,並在將記錄插入到Azure表存儲器時通過Fiddler捕獲網絡包。 –