public static void Main(string[] args) { var queueName = "strings_queue"; Log("Application started. Connecting to RabbitMq..."); var factory = new ConnectionFactory() { HostName = "localhost", UserName = "******", Password = "******" }; using var connection = factory.CreateConnection(); using var channel = connection.CreateModel(); Console.WriteLine("Enter the words to send separated by spaces."); var words = GetMessages(Console.ReadLine()); var producer = new MessageBusProducerClient(channel, queueName); foreach (var word in words) { Log($"Sending message '{word}'..."); var message = new Message <string>(Guid.NewGuid(), word); producer.PostAsync(message); Log("Message sent."); } Console.ReadLine(); channel.Close(); connection.Close(); string[] GetMessages(string messageInput) => (messageInput.Length > 0) ? messageInput.Split(' ') : new string[] { "Hello.", "Goodbye." }; void Log(string message) => Console.WriteLine($"[{DateTimeOffset.Now}] {message}"); }
private void Batching2_Click(object sender, EventArgs e) { string queueName = "Download_Batching_2"; Random rand = new Random(); int sendingMessage = rand.Next(1, 30); ConnectionFactory factory = new ConnectionFactory() { HostName = "localhost", UserName = "******", Password = "******" }; using var connection = factory.CreateConnection(); using var channel = connection.CreateModel(); MessageBusProducerClient producer = new MessageBusProducerClient(channel, queueName); int.TryParse(Download1Count.Text, out int count); if (count > 0) { for (int i = 0; i < count; i++) { Message <int> message = new Message <int>(Guid.NewGuid(), sendingMessage); producer.PostAsync(message); Debug.WriteLine("Message Sent"); } } else { Message <int> message = new Message <int>(Guid.NewGuid(), sendingMessage); producer.PostAsync(message); Debug.WriteLine("Message Sent"); } Debug.WriteLine($"Message sent at {DateTimeOffset.Now}"); channel.Close(); connection.Close(); }