34 lines
1.0 KiB
C#
34 lines
1.0 KiB
C#
using System;
|
|
using RabbitMQ.Client;
|
|
using System.Text;
|
|
|
|
class NewTask
|
|
{
|
|
public static void Main(string[] args)
|
|
{
|
|
var factory = new ConnectionFactory() { HostName = "localhost" };
|
|
using(var connection = factory.CreateConnection())
|
|
using(var channel = connection.CreateModel())
|
|
{
|
|
channel.QueueDeclare(queue: "task_queue", durable: true, exclusive: false, autoDelete: false, arguments: null);
|
|
|
|
var message = GetMessage(args);
|
|
var body = Encoding.UTF8.GetBytes(message);
|
|
|
|
var properties = channel.CreateBasicProperties();
|
|
properties.SetPersistent(true);
|
|
|
|
channel.BasicPublish(exchange: "", routingKey: "task_queue", basicProperties: properties, body: body);
|
|
Console.WriteLine(" [x] Sent {0}", message);
|
|
}
|
|
|
|
Console.WriteLine(" Press [enter] to exit.");
|
|
Console.ReadLine();
|
|
}
|
|
|
|
private static string GetMessage(string[] args)
|
|
{
|
|
return ((args.Length > 0) ? string.Join(" ", args) : "Hello World!");
|
|
}
|
|
}
|