public async Task <KeyValuePair <string, MemoryStream> > DownloadDocumentAsync(Guid documentId, Guid customerId)
        {
            var storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["DocumentStore"].ConnectionString);
            var blobClient     = storageAccount.CreateCloudBlobClient();

            var container = blobClient.GetContainerReference(customerId.ToString().ToLower());

            var dbContext = new DashDocsContext();
            var document  = await dbContext.Documents.SingleAsync(d => d.Id == documentId);

            var keyvaultResolver = new KeyVaultKeyResolver(GetToken);

            var encryptionPolicy = new BlobEncryptionPolicy(null, keyvaultResolver);
            var requestOptions   = new BlobRequestOptions {
                EncryptionPolicy = encryptionPolicy
            };

            var block = container.GetBlockBlobReference(document.BlobPath);

            var stream = new MemoryStream();
            await block.DownloadToStreamAsync(stream, null, requestOptions, null);

            var content = new KeyValuePair <string, MemoryStream>(document.DocumentName, stream);

            return(content);
        }
        public async Task <Tuple <MemoryStream, string> > DownloadDocument(Guid documentId, Guid customerId)
        {
            var storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["DocumentStore"].ConnectionString);
            var blobClient     = storageAccount.CreateCloudBlobClient();

            var container = blobClient.GetContainerReference(customerId.ToString().ToLower());

            var dbContext = new DashDocsContext();
            var document  = await dbContext.Documents.SingleAsync(d => d.Id == documentId);

            var block = container.GetBlockBlobReference(document.BlobPath);

            var stream = new MemoryStream();
            await block.DownloadToStreamAsync(stream);

            var content = new Tuple <MemoryStream, string>(stream, document.DocumentName);

            return(content);
        }