MassTransit saga azure服务总线是否接收端点设置?

时间:2019-03-13 14:31:03

标签: .net-core azureservicebus masstransit automatonymous

我正在尝试将MassTransit配置为使用Azure服务总线与自动机状态机一起使用,并且我看不到任何有关如何执行此操作的工作示例。我们以前使用的是RabbitMQ,我们使用以下代码对其进行了配置。我换成了使用Azure Service Bus而不是.CreateUsingRabbitMq()操作,但是似乎有些配置错误。官方文档在这方面有点不足。

  1. 操作系统:Windows 10 Pro
  2. Visual Studio版本:2017
  3. Dotnet版本:2.2

我在Azure Service Bus中创建了一个名为“ SomeQueue”的队列

我有一个StateSage cs.proj,它负责使用自动机名处理传奇工作流。在其配置中,我具有以下

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可以正常工作,因为我正在通过另一个充当WebApi的项目将消息放在Azure Service Bus中的队列中,该项目接收一些数据将其发送到服务总线上。

有没有人尝试过这样做或对Automatonymous有任何经验?

0 个答案:

没有答案