Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将消息插入RabbitMQ中的特定队列_C#_Rabbitmq_Rabbitmq Exchange - Fatal编程技术网

C# 将消息插入RabbitMQ中的特定队列

C# 将消息插入RabbitMQ中的特定队列,c#,rabbitmq,rabbitmq-exchange,C#,Rabbitmq,Rabbitmq Exchange,我是RabbitMQ的新手,正在尝试。在我的RabbitMQ服务器中,我设置了一个Exchange(TestExch),并创建了两个队列(TestQ和NewQ)。然后,我使用路由键(Q1和Q2)创建了从TestExch到队列的绑定 这是我用来发布消息的mt c#代码: string message = Console.ReadLine(); while(!String.IsNullOrEmpty(message)) { counter++; byte[] messageBuffe

我是RabbitMQ的新手,正在尝试。在我的RabbitMQ服务器中,我设置了一个Exchange(TestExch),并创建了两个队列(TestQ和NewQ)。然后,我使用路由键(Q1和Q2)创建了从TestExch到队列的绑定

这是我用来发布消息的mt c#代码:

string message = Console.ReadLine();
while(!String.IsNullOrEmpty(message))
{
    counter++;
    byte[] messageBuffer = Encoding.Default.GetBytes(message);

    string q = counter % 2 == 0 ? "Q1" : "Q2";
    model.BasicPublish("TestExch", q, properties, messageBuffer);

    Console.WriteLine(message + " => " + q);
    message = Console.ReadLine();
}
但是当我在发送消息时查看服务器时,我看到它被插入到两个队列中


我做错了什么?

问题是我定义的交换类型是扇出的-为了得到我期望的结果,我需要使用direct选项

@old_sound如前所述-我从RabbitMQ开始。我想这种错误很容易被忽略,我理解。这就是为什么我分享了这个链接,所以人们会看到你的答案。