.net core MassTransit saga azure服务总线接收端点设置?

.net core MassTransit saga azure服务总线接收端点设置?,.net-core,azureservicebus,masstransit,automatonymous,.net Core,Azureservicebus,Masstransit,Automatonymous,我正在尝试使用Azure服务总线将MassTransit配置为使用自动状态机,但我看不到任何关于如何实现这一点的工作示例。我们之前使用的是RabbitMQ,我们使用以下代码配置它。我已改为使用Azure服务总线而不是.CreateUsingRabbitMq()操作,但似乎存在一些配置错误。官方文件在这方面有点浅薄 操作系统:Windows10Pro Visual Studio版本:2017 Dotnet版本:2.2 我在Azure服务总线中创建了一个名为“SomeQueue”的队列 我有一个St

我正在尝试使用Azure服务总线将MassTransit配置为使用自动状态机,但我看不到任何关于如何实现这一点的工作示例。我们之前使用的是RabbitMQ,我们使用以下代码配置它。我已改为使用Azure服务总线而不是.CreateUsingRabbitMq()操作,但似乎存在一些配置错误。官方文件在这方面有点浅薄

  • 操作系统:Windows10Pro
  • Visual Studio版本:2017
  • Dotnet版本:2.2
  • 我在Azure服务总线中创建了一个名为“SomeQueue”的队列

    我有一个StateSage cs.proj,负责使用Automatonymous处理saga工作流。在其配置中,我有以下内容

    var bus = Bus.Factory.CreateUsingAzureServiceBus(cfg =>
            {
                var host = cfg.Host(
                    new Uri(AzureServiceBusConfigurationSettings.Uri),
                    h =>
                    {
                        h.SharedAccessSignature(s =>
                        {
                            s.KeyName = AzureServiceBusConfigurationSettings.KeyName;
                            s.SharedAccessKey = AzureServiceBusConfigurationSettings.ShareAccessKey;
                            s.TokenTimeToLive = TimeSpan.FromDays(1);
                            s.TokenScope = TokenScope.Namespace;
                        });
                    });
    
                cfg.UseSerilog();
    
                cfg.ReceiveEndpoint(
                    host,
                    "order_saga",
                    e =>
                    {
                        e.UseInMemoryOutbox();
                        e.StateMachineSaga(someStateMachine, repository);
                    });
    
            });
    
    bus.Start();
    
    现在我知道常量AzureServiceBusConfigurationSettings.Uri工作正常,因为我通过另一个项目将消息放置在Azure Service Bus中的队列上,该项目充当WebApi,接收一些数据并将其发送到服务总线


    有没有人尝试过这样做,或者有过使用Automatonymous的经验?

    它工作得很好,我看你没有提到任何特定的错误。你说它对RabbitMQ有效。那么,您正在经历的错误或行为是什么?例如,这些测试是有效的:因此我们发现状态机saga工作流没有被触发,因此我们只能假设与Automatonymous的集成是不正确的。我们在每个状态转换中都放置了日志,但没有触发任何日志。即使在调试期间,断点也从未命中。您的状态机用于事件的类型是什么,您发布的类型是什么?RabbitMQ支持多态消息类型,直到最近MassTransit才在Azure上支持它。.NETCore的最新版本添加了它。它运行良好,我看不到您提到任何特定错误。你说它对RabbitMQ有效。那么,您正在经历的错误或行为是什么?例如,这些测试是有效的:因此我们发现状态机saga工作流没有被触发,因此我们只能假设与Automatonymous的集成是不正确的。我们在每个状态转换中都放置了日志,但没有触发任何日志。即使在调试期间,断点也从未命中。您的状态机用于事件的类型是什么,您发布的类型是什么?RabbitMQ支持多态消息类型,直到最近MassTransit才在Azure上支持它。NETCore的最新版本添加了它。