I got error No connection could be made because the target machine actively refused it often, when read from Azure Table Storage, sometime on 80(http) sometime on 443(https)
I know I can setup retry for write by .SaveChangesWithRetries(), but how to apply retry on read?
btw, I read by code
DataServiceQuery<datatype> query = tableContext.CreateQuery<datatype>("table");
IQueryable<datatype> results= from q in query select q
Last I had to use the semi-official Transient Fault Handling Framework, but this was over a year ago; and the best practices guidelines may have changed.
EDIT
As pointed out in the comments, this solution has evolved into a The Transient Fault Handling Application Block, which is now available as a NuGet package.
For the uninitiated, the framework basically specifies retry (hammer) policy for a class of transport-type errors that occur naturally in any distributed environment and particularly in Azure. For example SQL azure may return an error code “Server too busy, try again in a moment” or “Your data got lost on the way over here, oops”, and you don’t need to know all those codes in order to basically say “Retry”.