コード例 #1
0
        public void AddStateData <T>(string key, T data)
        {
            var dataKey = MessageContextHelpers.GetStateDataKey(key);

            var dataString = MessageContextHelpers.SerializeDataToString(data);

            m_MessageHeaders.Add(dataKey, dataString);
        }
コード例 #2
0
        public async Task Send()
        {
            if (m_messages.Count == 0)
            {
                throw new InvalidOperationException("No messages have been added to flow to send");
            }

            var firstMessage = m_messages.Dequeue();

            string key = firstMessage.MesssageId.ToString();

            m_MessageHeaders.Add(Headers.MessageId, key);
            while (m_messages.Count != 0)
            {
                var item = m_messages.Dequeue();

                var message = MessageContextHelpers.SerializeDataToString(item.Message);
                m_MessageHeaders.Add(key, message);

                key = item.MesssageId.ToString();
            }

            await m_bus.Send(firstMessage.Message, m_MessageHeaders);
        }