private SB.Message ToServiceBusMessage(MessageBus.Spec.Message message) { var serializedMessage = _converter.Serialize(message.Payload); var messageBody = Encoding.UTF8.GetBytes(serializedMessage); var sbMsg = new SB.Message(messageBody) { MessageId = message.Id, ContentType = message.IsControl ? "control" : message.ContentType }; if (!string.IsNullOrEmpty(message.FilterCorrelation)) { sbMsg.CorrelationId = message.FilterCorrelation; } if (message.Properties != null && message.Properties.Any()) { foreach (var property in message.Properties) { sbMsg.UserProperties.Add(property); } } return(sbMsg); }
public MessageReceivedArgs(SB.Message message) { Message.Id = message.MessageId; var messageBytes = message.Body; var messageStr = Encoding.UTF8.GetString(messageBytes); Message = new MessageBus.Spec.Message() { Payload = messageStr, IsControl = message.ContentType == "control", ContentType = message.ContentType, ReceivedAt = DateTime.UtcNow, SentAt = message.ScheduledEnqueueTimeUtc }; if (message.UserProperties != null && message.UserProperties.Any()) { Message.Properties = new Dictionary <string, object>(message.UserProperties); } else { Message.Properties = new Dictionary <string, object>(); } }
public async Task SendAsync(MessageBus.Spec.Message message) { var sbMessage = ToServiceBusMessage(message); await _client.SendAsync(sbMessage); }