/// <summary> /// Listens to queue and gets messages; messages are not deleted; /// Messages will appear in queue again in 5 seconds /// </summary> /// <param name="queue">Cloud queue to listen</param> public void Listen(CloudQueue queue) { while (true) { // Get message frim queue; message will be invisible for 5 seconds CloudQueueMessage message = queue.GetMessage(new TimeSpan(0, 0, 10)); // if there are no more messages if (message == null) { continue; } var fileInfo = JsonConvert.DeserializeObject <FileInfo>(message.AsString); // some operation here is performed TableStorageHelper.AddTableLog(OperationType.Products, fileInfo.BlobPath, fileInfo.ProcessingType, OperationResult.Success); Console.WriteLine("Message successfully processed. Blob path {0}", fileInfo.BlobPath); } }