0

这不是问题,而是让我理解发生在 NserviceBus 中的“魔法”的问题

我有一个以这种方式调用 NServiceBus-Service 的工作环境:

"D:\Service\NServiceBus.Host.exe" -service  /serviceName:"MyServiceAdapter" /endpointName:"MyQueue.Adapter"

现在在同一个目录中有我的应用程序“My.Adapter.dll”,它也有一个配置。任何地方都没有 NserviceBus.config。仍然:NserviceBus 似乎知道它必须使用“My.Adapter.dll”

为什么 NServiceBus 知道这一点?我没有在队列 (MSMQ) 或其他任何地方找到我的应用程序的任何引用。它是否保存在注册表中?如果是:在哪里?

4

1 回答 1

5

默认情况下,NServiceBus 会扫描与 NServiceBus.Host.exe 位于同一文件夹中的所有程序集,并查找其自己的标记(接口),如 IWantCustomInitialization、IHandleMessage 等。它要么使用其默认的 IoC 容器构建器 (Autofac),要么使用您提供的容器构建器。

您还可以限制使用Configure.With(assemblies)V4 和configuration.AssembliesToScan(myListOfAssemblies)V5 扫描哪些程序集。

在这里阅读更多http://docs.particular.net/nservicebus/assembly-scanning

于 2015-02-17T20:28:19.507 回答