/// <summary> /// Abandons a message by returning it to the queue. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="message">The message we want to abandon.</param> /// <param name="propertiesToModify">The message properties to modify on abandon.</param> /// <returns>The async <see cref="T:System.Threading.Tasks.Task" /> wrapper.</returns> public async Task Abandon <T>(T message, KeyValuePair <string, object>[] propertiesToModify) where T : class { var msg = (MessageEntity <T>)Messages[message]; await ReceiverQueue.UpdateMessageAsync(msg.OriginalMessage, TimeSpan.FromSeconds(10), MessageUpdateFields.Content | MessageUpdateFields.Visibility); Messages.TryRemove(message, out _); }
/// <summary> /// Abandons the specified message. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="message">The message.</param> /// <returns>Task.</returns> public async Task Abandon <T>(T message) where T : class { var msg = (MessageEntity <T>)Messages[message]; await ReceiverQueue.UpdateMessageAsync(msg.OriginalMessage, TimeSpan.FromSeconds(10), MessageUpdateFields.Content | MessageUpdateFields.Visibility); Messages.TryRemove(message, out _); }