NServiceBus IBus对象

时间:2012-08-02 16:44:30

标签: .net nservicebus

我相信我做了一个愚蠢的假设,即IBus对象将在整个应用程序中加载,并且它是引用的程序集。

例如,如果我要在引用的程序集中执行以下操作:

public IBus Bus {get;set;}

我是否正确地说这个对象只会加载到实现NServiceBus类的类上,例如IHandleMessages和IWantToBeLoadedAtStartup?

对细节的任何帮助或澄清都会很棒。

由于

2 个答案:

答案 0 :(得分:3)

您所指的是依赖注入。 NServiceBus只会将IBus实例注入由NServiceBus管理的对象中。

例如,NServiceBus在传输消息到达时创建实现IHandleMessages的类的实例,并使用依赖注入容器注入总线客户端的实例。

您可以按照here所示扩展依赖注入机制。

答案 1 :(得分:1)

如果您使用另一个容器而不是默认容器,容器将具有由NSB容器抽象提供的自动有线总线IBus实例。没有必要在别处注册。它可以注入任何地方。