/// <inheritdoc /> public async Task DeleteAsync(string messageId, CancellationToken cancellationToken) { try { if (String.IsNullOrEmpty(messageId)) { throw new ArgumentNullException("messageId"); } IStorageBlockBlob blob = _blobContainer.GetBlockBlobReference(messageId); await blob.DeleteAsync(cancellationToken); } catch (StorageException exception) { // Return successfully if the blob has already been deleted. if (exception.IsNotFoundBlobOrContainerNotFound()) { return; } else { throw; } } }