AWS SDK Version 2 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

.NET Framework 4.5
 
For each message in the batch, the response contains a DeleteMessageBatchResultEntry tag if the message is deleted or a BatchResultErrorEntry tag if the message cannot be deleted.

Inheritance Hierarchy

System.Object
  Amazon.Runtime.AmazonWebServiceResponse
    Amazon.SQS.Model.DeleteMessageBatchResult

Namespace: Amazon.SQS.Model
Assembly: AWSSDK.dll
Version: 0.0.3.0

Syntax

C#
public class DeleteMessageBatchResult : AmazonWebServiceResponse

The DeleteMessageBatchResult type exposes the following members

Constructors

  Name Description
Public Method DeleteMessageBatchResult()

Properties

  Name Description
Public Property ContentLength Returns the content length of the HTTP response.
Public Property Failed Gets and sets the property Failed.

A list of BatchResultErrorEntry items.

Public Property HttpStatusCode Returns the status code of the HTTP response.
Public Property ResponseMetadata Contains additional information about the request, such as the Request Id.
Public Property Successful Gets and sets the property Successful.

A list of DeleteMessageBatchResultEntry items.

Examples

This example shows how to delete messages in batch.

Batch delete messages example

var client = new AmazonSQSClient();

var request = new ReceiveMessageRequest
{
  AttributeNames = new List<string>() { "All" },
  MaxNumberOfMessages = 5,
  QueueUrl = "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyTestQueue",
  VisibilityTimeout = (int)TimeSpan.FromMinutes(10).TotalSeconds,
  WaitTimeSeconds = (int)TimeSpan.FromSeconds(5).TotalSeconds
};

var response = client.ReceiveMessage(request);
var batchEntries = new List<DeleteMessageBatchRequestEntry>();

if (response.Messages.Count > 0)
{
  foreach (var message in response.Messages)
  {
    var batchEntry = new DeleteMessageBatchRequestEntry
    {
      Id = message.MessageId,
      ReceiptHandle = message.ReceiptHandle
    };

    batchEntries.Add(batchEntry);
  }

  var delRequest = new DeleteMessageBatchRequest
  {
    Entries = batchEntries,
    QueueUrl = "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyTestQueue"
  };

  var delResponse = client.DeleteMessageBatch(delRequest);

  if (delResponse.Failed.Count > 0)
  {
    Console.WriteLine("Failed deletions:");

    foreach (var failure in delResponse.Failed)
    {
      Console.WriteLine("  For ID '" + failure.Id + "': ");
      Console.WriteLine("    Code = " + failure.Code);
      Console.WriteLine("    Message = " + failure.Message);
      Console.WriteLine("    Sender's fault? = " + failure.SenderFault);
    }
  }

  if (delResponse.Successful.Count > 0)
  {
    Console.WriteLine("Successful deletions:");

    foreach (var success in delResponse.Successful)
    {
      Console.WriteLine("  ID '" + success.Id + "'");
    }
  }
}
else
{
  Console.WriteLine("No messages to delete.");
}
      

Version Information

.NET Framework:
Supported in: 4.5, 4.0, 3.5

.NET for Windows Store apps:
Supported in: Windows 8.1, Windows 8

.NET for Windows Phone:
Supported in: Windows Phone 8.1, Windows Phone 8