本文整理匯總了C#中RabbitMQ.Client.ConnectionFactory.QueueDeclare方法的典型用法代碼示例。如果您正苦於以下問題:C# ConnectionFactory.QueueDeclare方法的具體用法?C# ConnectionFactory.QueueDeclare怎麽用?C# ConnectionFactory.QueueDeclare使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類RabbitMQ.Client.ConnectionFactory
的用法示例。
在下文中一共展示了ConnectionFactory.QueueDeclare方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: nonBlockingRead
private string nonBlockingRead(LoanBroker.model.LoanRequest loanRequest)
{
string returnString = "Could not send the message";
EventingBasicConsumer consumer;
using (IModel channel = new ConnectionFactory() { HostName = Queues.RABBITMQ_HOSTNAME }.CreateConnection().CreateModel())
{
channel.QueueDeclare(queue: Queues.LOANBROKER_OUT,
durable: false,
exclusive: false,
autoDelete: false,
arguments: null);
consumer = new EventingBasicConsumer(channel);
bool weDontHaveIt = true;
consumer.Received += (model, ea) =>
{
LoanBroker.model.LoanResponse loanResponse = JsonConvert.DeserializeObject<LoanBroker.model.LoanResponse>(Encoding.UTF8.GetString(ea.Body));
if (loanResponse.SSN == loanRequest.SSN)
{
weDontHaveIt = false;
}
else
{
// Return it to the queue
channel.BasicReject(ea.DeliveryTag, true);
}
};
channel.BasicConsume(queue: Queues.LOANBROKER_OUT,
noAck: true,
consumer: consumer);
while (weDontHaveIt)
{
System.Threading.Thread.Sleep(5);
}
}
return returnString;
}