Azure Queue Storage is an asynchronous messaging system in the cloud which enables you to pass messages from one application to another. This is great for loosely coupled architectures which have independent application tiers, where you will have the ability to scale independently within those application tiers. A single queue message can be up to 64 KB in size, and a queue can contain millions of messages, up to the total capacity limit of a storage account.

When you create a storage account, it includes the Queue service alongside the Blob and Table services. Table services can be accessed through a URL format. It looks like this:

http://<storage account name>.queue.core.windows.net/<queue name>.

Common uses of Queue storage include,

Here, in this article, first, we will create a storage account and have the keys to use it in our application and then a console application, which connects to the storage account and create a queue inside it.

Step 1

Log in to your Microsoft Azure portal, click on Create new resource and select Storage account - blob, file, table, the queue from Storage category to create a Storage account and give the necessary details as follows.

Azure

Step 2

Once the deployment has succeeded, open the resource and click on Access keys and note a key for a later purpose.

Azure

Step 3

Create a new C# Console Application within Visual Studio and name it QueueDemo.

Azure

Step 4

Once the project is created, install two NuGet Packages named WindowsAzure.Storage and WindowsAzure.ConfigurationManager to your solution. You can do this by selecting Tools > NuGet Package Manager > Manage NuGet Packages for Solution. In the Browse tab, search for WindowsAzure.Storage and WindowsAzure.ConfigurationManager to get the packages. Complete the installation by reviewing the changes and accepting the license term for both.

Azure
Azure

Step 5

Now, we have to add the Connection String to the storage account. For that open the App.config file and add the following code snippet within the configuration. Replace the [Connection string] with the connection string value you copied in Step 2.

  1. <appSettings>
  2. <add key="StorageConnection" value="[Connection String]" />
  3. </appSettings>

Azure

Step 6

Now, go to the Program.cs Page and add the following code to the Main method. This code will create a connection with the storage account and create a queue named tasks in our blob storage.
  1. //Reference to the ConnectionString in the App.Config file
  2. CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
  3. CloudConfigurationManager.GetSetting("StorageConnection"));
  4. CloudQueueClient QueueClient = storageAccount.CreateCloudQueueClient();
  5. CloudQueue queue = QueueClient.GetQueueReference("tasks");
  6. queue.CreateIfNotExists();
  7. Console.ReadKey();

Add the following namespaces also.

  1. using Microsoft.Azure;
  2. using Microsoft.WindowsAzure.Storage;
  3. using Microsoft.WindowsAzure.Storage.Queue;

Azure

Step 7

Click on Start to run the program and you will see a console window waiting for an input as we given Console.Readkey() at the end of the code.
Azure

Step 8

Go back to your storage account and select Queues service from the overview tab and you can see that we now have a tasks queue there (Refresh if not reflected).

Azure
Azure