我有一個名爲LogCloudModel
的異步方法。我對這種方法的返回類型感到困惑。它調用異步方法InsertIntoTableStorage
。以下是完整的代碼示例。在執行Azure表存儲的插入操作後,我應該如何從C#中的Async方法返回?
private static async void LogCloudModel(ModelExecutionContext context)
{
var azureStorageAccount = new AzureStorageAccount();
var cloudModelDetail = new CloudModelDetail();
//Populate the cloud model
var cloudModelDetailCollection = PopulateCloudModel(context, cloudModelDetail);
if (cloudModelDetailCollection == null) return;
await InsertIntoTableStorage(azureStorageAccount, cloudModelDetailCollection);
LogTableStorageTransactionResult(azureStorageAccount, operationResult, cloudModelDetail.PartitionKey, cloudModelDetail.RowKey);
}
目前,我什麼都沒有返回(void)。我的實現是否正確?
'異步任務'。請注意,您不必實際返回新的Task()或任何東西。返回的任務由編譯器負責。 – Will
您返回的內容取決於您需要返回的內容。如果不需要通知插入成功,則無效。 – Andrew
您可以在[異步最佳實踐](https://msdn.microsoft.com/en-us/magazine/jj991977.aspx)上找到我的文章。 –