我们需要从数据库发布多个事件作为 json 字符串。像这样通过公共交通发布这个 json 事件:
using var scope = _serviceScopeFactory.CreateScope();
var sendEndpointProvider = scope.ServiceProvider.GetService<ISendEndpointProvider>();
var endpoint = await sendEndpointProvider.GetSendEndpoint(new System.Uri("exchange:IntegrationEvents.DynamicEvent:DynamicEvent"))
var json = JsonConvert.SerializeObject(dynamicObject, Newtonsoft.Json.Formatting.None);// sample
var obj = JsonConvert.DeserializeObject(json, new JsonSerializerSettings { });
await endpoint.Send(obj,i=>i.Serializer.ContentType.MediaType= "application/json");
在配置中我们使用这个配置:
cfg.UseRawJsonSerializer();
使用此配置时,json 事件已成功发布,但我们有一个奇怪的问题:“all”事件使用者被空消息数据调用!...在Rabbitmq jsut 中发布了我们的“动态事件”,但在masstrasit 中,所有消费者都调用了!感谢您让我们知道我们是否犯了错误