Looked at this with Nate. Turns out that the await was necessary in this case.

From: Diego Vega
Sent: Thursday, May 22, 2014 9:14 PM
To: aspnet/EntityFramework; aspnet/EntityFramework
Subject: RE: [EntityFramework] Beginnings of a provider for Azure Table Storage (#181)

Ok, I still think we should not have async if unnecessary. But let's chat about it in person. Not blocking on this.

Sent from my Windows Phone
________________________________
From: Nate McMaster<mailto:notifications@github.com>
Sent: ý5/ý22/ý2014 17:03
To: aspnet/EntityFramework<mailto:EntityFramework@noreply.github.com>
Cc: Diego Vega<mailto:Diego.Vega@microsoft.com>
Subject: Re: [EntityFramework] Beginnings of a provider for Azure Table Storage (#181)

In src/Microsoft.Data.Entity.AzureTableStorage/AzureTableStorageDataStore.cs:

> +                        {

> +                            startBatch.Invoke(batch, table);

> +                            batch = new TableBatchOperation();

> +                        }

> +                    }

> +                    if (cancellationToken.IsCancellationRequested)

> +                    {

> +                        break;

> +                    }

> +                    if (batch.Count != 0)

> +                    {

> +                        startBatch.Invoke(batch, table);

> +                    }

> +                }

> +            }

> +            return await new TaskFactory<int>().ContinueWhenAll(allBatchTasks.ToArray(), InspectBatchResults, cancellationToken);

I've update these methods. I still use the async keyword, but have instead used it according to the guidelines mentioned in the article you shared with me.

—
Reply to this email directly or view it on GitHub<https://github.com/aspnet/EntityFramework/pull/181/files#r12981191>.