Export (0) Print
Expand All

CloudQueue.BeginCreateIfNotExist Method

Updated: September 27, 2013

[This topic is part of the Windows Azure Storage Client Library 1.7, which has been deprecated. The current recommended version is Storage Client Library 3.0.]

Begins an asynchronous operation to create the queue if it does not exist.

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


public IAsyncResult BeginCreateIfNotExist (
	AsyncCallback callback,
	Object state



Type: System.AsyncCallback

The callback delegate that will receive notification when the asynchronous operation completes.


Type: System.Object

A user-defined object that will be passed to the callback delegate.

Return Value

Type: System.IAsyncResult

An IAsyncResult that references the asynchronous operation.

The following code example illustrates using state when calling BeginCreateIfNotExist.

using System;
using System.Diagnostics;
using Microsoft.WindowsAzure;
using Microsoft.WindowsAzure.StorageClient;

namespace QueueAsyncExample
  public class QueueAsyncStateExample
    public CloudQueue queueObject;
    public object customStateInformation;

    // Constructor for the example state class
    public QueueAsyncStateExample( CloudQueue queue, object yourAdditionalStateObject )
      this.queueObject = queue;
      this.customStateInformation = yourAdditionalStateObject;

    // Static call that starts creating a queue if it does not already exist
    // (the 'queue' parameter is a CloudQueue reference obtained from CloudQueueClient)
    static void CreateQueueIfNotExistAsync( CloudQueue queue, object stateObject )
      queue.BeginCreateIfNotExist( QueueCreateIfNotExistCallback,
                                   new QueueAsyncStateExample( queue, stateObject ) );

    // The callback method that is called once the create-if-not-exist operation is complete
    static void QueueCreateIfNotExistCallback( IAsyncResult opResult )
      QueueAsyncStateExample state = (QueueAsyncStateExample) opResult.AsyncState;
      CloudQueue queue = state.queueObject;
      // End the BeginCreateIfNotExist operation
      string yesNo = ( queue.EndCreateIfNotExist( opResult ) ) ? "actually" : "not";
      Trace.WriteLine( string.Format( "The '{0}' queue was {1} created...", 
                                       queue.Name, yesNo ) );
      // ...other asynchronous operations could be started here if appropriate

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.

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

Development Platforms

Windows Vista, Windows 7 and Windows Server 2008

Target Platforms

© 2014 Microsoft