更新只是更详细地阅读了谷歌组,显然这是一个应用程序配置问题。尝试后会更新帖子。
我想知道在尝试对 NServiceBus 进行单元测试时是否有人知道这个问题。
意识到我在下面有两个初始化方法,但这是为了说明我正在尝试做的事情。基于请求的堆栈跟踪。
(NServiceBus.LocalAddress) 不在字典中。(NServiceBus.LocalAddress) 不在字典中。
我认为堆栈跟踪的其他部分是抱怨 InMemoryPersistence 的红鲱鱼。但是,也有一个 Google 小组也在讨论这个问题,他们遇到了同样的问题,这让我认为这更像是 NServiceBus 问题而不是编码错误。
谷歌群组链接https://groups.google.com/forum/m/#!topic/particularsoftware/424_6KCv6oI
应该提到看过这些帖子。
https://github.com/Particular/NServiceBus.Testing/issues/20 https://github.com/Particular/NServiceBus.Testing/commit/f761c5391b03b05d967f2e368248c72522051d59
public static class CustomInit
{
public static void Init()
{
//Previous versions of NBUS, specifically 4.6.5
//MessageConventionExtensions.IsEventTypeAction = MessageConfiguration.ForEvents();
//MessageConventionExtensions.IsCommandTypeAction = MessageConfiguration.ForCommands();
//New 5.2.0 how to setup tests
Test.Initialize(x => x.AssembliesToScan(GetAssembliesToScan()));
Test.Initialize(
x =>
{
x.Conventions().DefiningCommandsAs([my namespace]);
x.Conventions().DefiningEventsAs([my namespace]);
x.AssembliesToScan(GetAssembliesToScan());
});
}
private static IEnumerable<Assembly> GetAssembliesToScan()
{
return new[]
{
AssemblyFromType<ISomeInterface>()
};
}
}