【发布时间】:2019-10-19 01:19:01
【问题描述】:
因此,我将 MassTransit 添加到之前仅使用 RMQ 客户端的现有项目中。
我正在尝试创建一个绑定到现有交换的仅发送总线。但是,当我尝试发送消息时,我收到有关交换类型为“扇出”但现有类型为“主题”的错误,我不确定如何指定它应该是“主题”还是应该根本不要尝试创建交换,而只是使用那里的东西。
拓扑:“导入”(交换)->“导入”(队列)
设置:
Bus.Factory.CreateUsingRabbitMq(
cfg =>
{
cfg.UseNLog();
var host = cfg.Host(serverName, vhost,
options =>
{
options.Username(userName);
options.Password(password);
});
});
执行:
var ep = bus.GetSendEndpoint(new Uri($"rabbitmq://{userName}:{password}@{serverName}/{vhost}/{queue}")).Result;
ep.Send<ImportMessage>(CastMessage<ImportMessage>(message),
cfg =>
{
cfg.SetRoutingKey("import");
}).Wait();
命令:
public class ImportMessage
{
public ImportMessage()
{
Parameters = new List<KeyValuePair<string, string>>();
}
public List<KeyValuePair<string, string>> Parameters { get; set; }
public string Endpoint { get; set; }
public Guid Id { get; set; }
public string Type { get; set; }
public DateTime Expiration { get; set; }
}
【问题讨论】:
标签: masstransit