A higher-level interface for Amazon SQS for .NET. It features an object queue (Internally messages are serialized to JSON) and a simple WPF app for probing your queues.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Amazon SQS .NET Object Interface

A higher-level interface to Amazon SQS for .NET. It features an object queue that serializes objects to JSON internally. Also included is a simple WPF app for observing queues and messages. Depends on the AWS SDK for .NET (included).

Example Usage

Create an instance of AmazonSqs.ObjectQueue:

AmazonSqs.ObjectQueue queue = new AmazonSqs.ObjectQueue(
    ConfigurationManager.AppSettings["AWSAccessKey"],   // Or your AWS access key
    ConfigurationManager.AppSettings["AWSSecretKey"],   // Or your AWS secret key
    "MyQueue"                                           // Any queue name

queue.Enqueue<List<string>>(new List<string>(new string[] { "Hello", "World", "Bro" }));

Serialized objects must be less than 256K in length. Unfortunately, there's no way of knowing if a type is serializable unless you can successfully serialize and deserialize it. The only thing the library does is ensure your type is a reference type with a default constructor.

// Meanwhile in another place and at another time...

var mylist = queue.DequeueOne<List<string>>();  // Deletes message from queue!

// If you don't want to automatically delete the message you can peek it.

ObjectMessage<List<string>> msg = queue.Peek<List<string>>();

*If you want to run the tests, make a copy of App.config.sample and name it App.config. Add your AWS credentials to the example appSettings.