Cloud computing storage windows azure Storage

Source: Internet
Author: User
Tags configuration settings

Go to Windows azure storage and create the honggensave account. The result is shown in.

The main code is as follows.

using Microsoft.WindowsAzure;using Microsoft.WindowsAzure.ServiceRuntime;using Microsoft.WindowsAzure.StorageClient;  private static bool storageInitialized = false;        private static object gate = new Object();        private static CloudBlobClient blobStorage;        private static CloudQueueClient queueStorage;        protected void Page_Load(object sender, EventArgs e)        {            if (!Page.IsPostBack)            {                Timer1.Enabled = true;            }        }        protected void SignButton_Click(object sender, EventArgs e)        {            if (FileUpload1.HasFile)            {                InitializeStorage();                                // upload the image to blob storage                CloudBlobContainer container = blobStorage.GetContainerReference("guestbookpics");                string uniqueBlobName = string.Format("image_{0}.jpg", Guid.NewGuid().ToString());                CloudBlockBlob blob = container.GetBlockBlobReference(uniqueBlobName);                blob.Properties.ContentType = FileUpload1.PostedFile.ContentType;                blob.UploadFromStream(FileUpload1.FileContent);                System.Diagnostics.Trace.TraceInformation("Uploaded image '{0}' to blob storage as '{1}'", FileUpload1.FileName, uniqueBlobName);                // create a new entry in table storage                GuestBookEntry entry = new GuestBookEntry() { GuestName = NameTextBox.Text, Message = MessageTextBox.Text, PhotoUrl = blob.Uri.ToString(), ThumbnailUrl = blob.Uri.ToString() };                GuestBookEntryDataSource ds = new GuestBookEntryDataSource();                ds.AddGuestBookEntry(entry);                System.Diagnostics.Trace.TraceInformation("Added entry {0}-{1} in table storage for guest '{2}'", entry.PartitionKey, entry.RowKey, entry.GuestName);                // queue a message to process the image                var queue = queueStorage.GetQueueReference("guestthumbs");                var message = new CloudQueueMessage(String.Format("{0},{1},{2}", uniqueBlobName, entry.PartitionKey, entry.RowKey));                queue.AddMessage(message);                System.Diagnostics.Trace.TraceInformation("Queued message to process blob '{0}'", uniqueBlobName);            }            NameTextBox.Text = "";            MessageTextBox.Text = "";            DataList1.DataBind();        }        protected void Timer1_Tick(object sender, EventArgs e)        {            DataList1.DataBind();        }        private void InitializeStorage()        {            if (storageInitialized)            {                return;            }            lock (gate)            {                if (storageInitialized)                {                    return;                }                try                {                    // read account configuration settings                    var storageAccount = CloudStorageAccount.FromConfigurationSetting("DataConnectionString");                    // create blob container for images                    blobStorage = storageAccount.CreateCloudBlobClient();                    CloudBlobContainer container = blobStorage.GetContainerReference("guestbookpics");                    container.CreateIfNotExist();                    // configure container for public access                    var permissions = container.GetPermissions();                    permissions.PublicAccess = BlobContainerPublicAccessType.Container;                    container.SetPermissions(permissions);                    // create queue to communicate with worker role                    queueStorage = storageAccount.CreateCloudQueueClient();                    CloudQueue queue = queueStorage.GetQueueReference("guestthumbs");                    queue.CreateIfNotExist();                }                catch (WebException)                {                    throw new WebException("Storage services initialization failure. "                        + "Check your storage account configuration settings. If running locally, "                        + "ensure that the Development Storage service is running.");                }                storageInitialized = true;            }        }

Use azure storage explorer to View cloud storage conditions, such:

Note that the configuration file is used for local debugging:

<Setting name = "dataconnectionstring" value = "usedevelopmentstorage = true"/>
<Setting name = "Microsoft. windowsazure. plugins. Diagnostics. connectionstring" value = "usedevelopmentstorage = true"/>

Use the correct accountname and accountkey when deploying to azure. Set primary access key here.

<Setting name = "dataconnectionstring" value = "defaultendpointsprotocol = HTTPS; accountname = honggensave; accountkey = assets/9i + lw + vs5fwpgk/4jw + Signature ="/>
<Setting name = "Microsoft. windowsazure. plugins. diagnostics. connectionstring "value =" defaultendpointsprotocol = HTTPS; accountname = honggensave; accountkey = Hangzhou/9i + lw + vs5fwpgk/4jw + edfzfsitypwoyffbnxxxx "/>
 

View table data storage. You can see partitionkey and rowkey.

Store a jpg image, which can be accessed using the following URL:

Https://honggensave.blob.core.windows.net/guestbookpics/image_2d1a11b1-8c37-43e9-857c-937bf37f32ef.jpg

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.