Begins an asynchronous operation to delete a blob, using a conditional request based on the BlobRequestOptions that you specify. Namespace: Microsoft.WindowsAzure.StorageClient
Assembly: Microsoft.WindowsAzure.StorageClient (in Microsoft.WindowsAzure.StorageClient.dll)
Usage
Visual Basic |
---|
Dim instance As CloudBlob Dim options As BlobRequestOptions Dim callback As AsyncCallback Dim state As Object Dim returnValue As IAsyncResult returnValue = instance.BeginDelete(options, callback, state) |
Syntax
Visual Basic |
---|
Public Function BeginDelete ( _ options As BlobRequestOptions, _ callback As AsyncCallback, _ state As Object _ ) As IAsyncResult |
C# |
---|
public IAsyncResult BeginDelete ( BlobRequestOptions options, AsyncCallback callback, Object state ) |
C++ |
---|
public: IAsyncResult^ BeginDelete ( BlobRequestOptions^ options, AsyncCallback^ callback, Object^ state ) |
J# |
---|
JScript |
---|
Parameters
- options
Type: Microsoft.WindowsAzure.StorageClient.BlobRequestOptions
An object that specifies any additional options for the request.
- 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.IAsyncResultAn IAsyncResult that references the asynchronous operation.Example
The following code example creates a blob reference, then instantiates it in the cloud by uploading the contents of a local text file to it, and finally deletes it —using a conditional, asynchronous request.
C# | Copy Code |
---|---|
static void Eg_BeginDeleteBlob2(Uri blobEndpoint, string accountName, string accountKey) { // Create a service client for credentialed access to the Blob service. CloudBlobClient blobClient = new CloudBlobClient(blobEndpoint, new StorageCredentialsAccountAndKey(accountName, accountKey)); // Create a blob reference. CloudBlob myBlob = blobClient.GetBlobReference("mycontainer/myblob.txt"); // Use the blob reference to create and initialize an actual blob in the cloud. myBlob.UploadFile("C:\\somefile.txt"); // Set options for the request. BlobRequestOptions options = new BlobRequestOptions(); // If the blob is a snapshot, then Delete would fail without setting this option. options.DeleteSnapshotsOption = DeleteSnapshotsOption.IncludeSnapshots; // Delete the blob only if it's contents have changed during the past week. System.TimeSpan interval = new TimeSpan(7, 0, 0, 0); options.CopySourceAccessCondition = AccessCondition.IfModifiedSince(DateTime.UtcNow.Subtract(interval)); // Delete the blob using an asynchronous call. myBlob.BeginDelete(options, Eg_DeleteCallback, myBlob); } private void Eg_DeleteCallback(IAsyncResult result) { CloudBlob blobToDelete = (CloudBlob)result.AsyncState; blobToDelete.EndDelete(result); } |
Remarks
A blob that has snapshots cannot be deleted unless the snapshots are also deleted. If a blob has snapshots, use the DeleteSnapshotsOption property to specify how the snapshots should be handled when the blob is deleted.
The BeginDelete method will fail if the blob does not exist. To delete the blob only if it exists, use the BeginDeleteIfExists method.