Im really new to Windows Azure development and have a requirement to store some data in a windows azure storage table.
This table will really only exist to provide a qu
If you need to use the same table name you can use an extension method:
public static class StorageExtensions
{
public static bool SafeCreateIfNotExists(this CloudTable table, TableRequestOptions requestOptions = null, OperationContext operationContext = null)
{
do
{
try
{
return table.CreateIfNotExists(requestOptions, operationContext);
}
catch (StorageException e)
{
if ((e.RequestInformation.HttpStatusCode == 409) && (e.RequestInformation.ExtendedErrorInformation.ErrorCode.Equals(TableErrorCodeStrings.TableBeingDeleted)))
Thread.Sleep(1000);// The table is currently being deleted. Try again until it works.
else
throw;
}
} while (true);
}
}
WARNING! Be careful when you use this approach, because it blocks the thread. And it can go to the dead loop if third-party service (Azure) keeps generating these errors. The reason for this could be table locking, subscription expiration, service unavailability, etc.