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 3.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: (assembly version)

Syntax

C#
public class DeleteMessageBatchResult : AmazonWebServiceResponse

The DeleteMessageBatchResult type exposes the following members

Constructors

NameDescription
Public Method DeleteMessageBatchResult()

Properties

NameTypeDescription
Public Property ContentLength System.Int64 Inherited from Amazon.Runtime.AmazonWebServiceResponse.
Public Property Failed System.Collections.Generic.List<Amazon.SQS.Model.BatchResultErrorEntry> Gets and sets the property Failed.

A list of BatchResultErrorEntry items.

Public Property HttpStatusCode System.Net.HttpStatusCode Inherited from Amazon.Runtime.AmazonWebServiceResponse.
Public Property ResponseMetadata Amazon.Runtime.ResponseMetadata Inherited from Amazon.Runtime.AmazonWebServiceResponse.
Public Property Successful System.Collections.Generic.List<Amazon.SQS.Model.DeleteMessageBatchResultEntry> 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