CloudTableClient.BeginDeleteTableIfExist 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.]

Begins an asynchronous operation to delete the tables if it exists.

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

Usage

Visual Basic
Dim instance As CloudTableClient
Dim tableName As String
Dim callback As AsyncCallback
Dim state As Object
Dim returnValue As IAsyncResult

returnValue = instance.BeginDeleteTableIfExist(tableName, callback, state)

Syntax

Visual Basic
Public Function BeginDeleteTableIfExist ( _
	tableName As String, _
	callback As AsyncCallback, _
	state As Object _
) As IAsyncResult
C#
public IAsyncResult BeginDeleteTableIfExist (
	string tableName,
	AsyncCallback callback,
	Object state
)
C++
public:
IAsyncResult^ BeginDeleteTableIfExist (
	String^ tableName, 
	AsyncCallback^ callback, 
	Object^ state
)
J#
JScript

Parameters

tableName

Type: System.String

The table name.

callback

Type: System.AsyncCallback

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

state

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.

Example

The following code example deletes a table asynchronously if it exists.

C# Copy Code
public static void DeleteTableIfExistsAsync(CloudStorageAccount storageAccount)
{
    // Create service client for credentialed access to the Table service.
    CloudTableClient tableClient = new CloudTableClient(
            storageAccount.TableEndpoint.ToString(),
            storageAccount.Credentials);

    tableClient.BeginDeleteTableIfExist(
        "Categories", DeleteTableIfExistAsyncCallback, tableClient);
    System.Threading.Thread.Sleep(5000); // wait, the async task is completing.
}

public static void DeleteTableIfExistAsyncCallback(IAsyncResult result)
{
    CloudTableClient tableClient = (CloudTableClient)result.AsyncState;

    // End the operation.
    if (tableClient.EndDeleteTableIfExist(result))
        Console.WriteLine("Table deleted.");
    else
        Console.WriteLine("Table doesn't exist; could not be deleted.");
}

Remarks

When a table is successfully deleted, it is immediately marked for deletion and is no longer accessible to clients. The table is later removed from the Table service during garbage collection.

Note that deleting a table is likely to take at least 40 seconds to complete. If an operation is attempted against the table while it was being deleted, a StorageClientException is thrown, with additional error information indicating that the table is being deleted.


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