public class Functions { // This function will get triggered/executed when a new message is written // on an Azure Queue called queue. //public static void ProcessQueueMessage([QueueTrigger("queue")] string message, TextWriter log) //{ // log.WriteLine(message); //} public static void ProcessRawFile( [QueueTrigger("thumbnailrequest")] BlobInformation blobInfo, [Blob("images/{BlobName}", FileAccess.Read)] Stream input, [Blob("images/{BlobNameWithoutExtension}_thumbnail.jpg")] CloudBlockBlob outputBlob) { using (Stream output = outputBlob.OpenWrite()) { //do work // Retrieve storage account from connection string. var storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["AzureWebJobsStorage"].ToString()); // Create the blob client. CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient(); // Retrieve a reference to a container. CloudBlobContainer container = blobClient.GetContainerReference("images"); // Retrieve reference to a blob named "myblob". CloudBlockBlob blob = container.GetBlockBlobReference("TestImage"); MemoryStream ms = new MemoryStream(); //Retrive the memorystream blob.DownloadToStream(ms); var rawFile = DeserializeFromStream(ms); } } private static MemoryStream SerializeToStream(object o) { MemoryStream stream = new MemoryStream(); IFormatter formatter = new BinaryFormatter(); formatter.Serialize(stream, o); return stream; } private static object DeserializeFromStream(MemoryStream stream) { IFormatter formatter = new BinaryFormatter(); stream.Seek(0, SeekOrigin.Begin); object o = formatter.Deserialize(stream); return o; }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)