CloudQueue.CreateIfNotExist Method

Storage Client Library NET API

[This topic is part of the Microsoft Azure Storage Client Library 1.7, which has been deprecated. See Storage Client Library for the latest version.]

Creates the queue if it does not exist.

Namespace: Microsoft.WindowsAzure.StorageClient
Assembly: Microsoft.WindowsAzure.StorageClient (in Microsoft.WindowsAzure.StorageClient.dll)

Usage

Visual Basic
Dim instance As CloudQueue
Dim returnValue As Boolean

returnValue = instance.CreateIfNotExist

Syntax

Visual Basic
Public Function CreateIfNotExist As Boolean
C#
public bool CreateIfNotExist ()
C++
public:
bool CreateIfNotExist ()
J#
JScript

Return Value

Type: System.Boolean

true if the queue did not exist and was created; otherwise false.

Example

The following code example creates a queue if it does not already exist, and adds some messages to it.

C# Copy Code
static void CreateQueueAndAddMessages(Uri queueEndpoint, string accountName, string accountKey)
{
    //Create service client for credentialed access to the Queue service.
    CloudQueueClient queueClient = new CloudQueueClient(queueEndpoint,
        new StorageCredentialsAccountAndKey(accountName, accountKey));

    //Get a reference to a queue in this storage account.
    CloudQueue queue = queueClient.GetQueueReference("myqueue");
    //Create the queue if it does not already exist.
    queue.CreateIfNotExist();

    //Clear any existing messages from the queue.
    queue.Clear();

    //Create some new messages.
    CloudQueueMessage msg1 = new CloudQueueMessage("message1");
    CloudQueueMessage msg2 = new CloudQueueMessage("message2");
    CloudQueueMessage msg3 = new CloudQueueMessage("message3");
            
    //Add the messages to the queue.
    queue.AddMessage(msg1);
    queue.AddMessage(msg2);
    //Add the message with a time-to-live of one hour.
    queue.AddMessage(msg3, new TimeSpan(1, 0, 0));

   //Get one message from the queue.
   CloudQueueMessage msgRead = queue.GetMessage();

   //If the message is not null, display it.
   if (msgRead != null)
   {
      Console.WriteLine(msgRead.AsString);
      Console.WriteLine();

      //After reading the message, the client should delete it.
      queue.DeleteMessage(msgRead);
   }
   else
   {
      Console.WriteLine("The queue contains no messages.");
      Console.WriteLine();
   }
                
   //Get up to 10 messages from the queue.
   foreach (var msg in queue.GetMessages(10))
   {
      Console.WriteLine(msg.AsString);
      queue.DeleteMessage(msg);
   }
}

Remarks

You can specify user-defined metadata on the queue at the time that it is created. To specify metadata for the queue, add name-value pairs to the queue's Metadata.

For guidance about valid names for queues and metadata, see Naming Queues and Metadata.


Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

Windows Vista, Windows 7, Windows Server 2008, Windows 8.1, Windows Server 2012 R2, Windows 8 and Windows Server 2012

Change History

See Also