示例#1
0
        public async Task Add(IEvent @event)
        {
            var json = JsonConvert.SerializeObject(@event, Formatting.Indented);

            var item = new EventItem
            {
                EventType = @event.GetType().Name,
                Data      = json
            };

            var storageAccount = CloudStorageAccount.Parse(_connectionString);
            var client         = storageAccount.CreateCloudQueueClient();

            var queue = client.GetQueueReference(QueueNames.DomainEventsQueueName);
            await queue.CreateIfNotExistsAsync();

            var message = new CloudQueueMessage(JsonConvert.SerializeObject(item, Formatting.Indented));

            await queue.AddMessageAsync(message);
        }