gpt4 book ai didi

autofac - MassTransit 、 Autofac 和 2 个公交车实例

转载 作者:行者123 更新时间:2023-12-02 21:34:29 25 4
gpt4 key购买 nike

我遇到的情况是,发布者和消费者位于同一个应用程序中。我正在使用 autofac。

据我了解,我需要 2 个具有 2 个端点的总线实例,一个用于发布者,一个用于订阅者。

我正在使用 autofac,但我不知道如何创建 2 个总线实例,每个实例都有自己的订阅类(应该由 autofac 解析)。在 JEE/CDI 中,我会使用限定符,但据我所知 autofac 没有类似的东西(并且命名服务不会自动连接)。

所以基本上我有两个问题:

  • 注册 2 个总线实例,每个实例都有一组不同的订阅者。
  • 稍后找到合适的实例。

有什么提示可以做到这一点吗?

最佳答案

它使用命名实例...

builder.Register(c => new FooImpl())
.As<IFoo>()
.Named("Foo1");

然后

container.ResolveNamed<IFoo>("Foo1");

如果我的 Autofac 语法在我的脑海中是正确的。这至少应该让你走上正确的道路。只需请求每个 IServiceBus 的实例,以便从容器中解析并创建它们。

哦,您不能使用 LoadFrom 来注册消费者。您必须手动解决并注册每一项。因为调用 LoadFrom 将注册容器中的所有使用者。

您可以创建两个子容器,每个子容器对应一个IServiceBus,但现在我们已经远远超出了我知道如何使用 Autofac 进行操作的范围。您几乎可以使用其他容器来完成此操作,因此我认为您可以使用 Autofac。

关于autofac - MassTransit 、 Autofac 和 2 个公交车实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21708549/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com