我想在我自己的进程中托管NServiceBus。
配置NServiceBus时我得到一个空引用异常,我改变了一些似乎解决了这个问题的配置调用的顺序。我现在面临另一个错误。这是我的配置代码:
Configure.With()
.CastleWindsorBuilder(Container.Instance)
.XmlSerializer()
.MsmqSubscriptionStorage()
.MsmqTransport()
.UnicastBus()
.LoadMessageHandlers()
.CreateBus()
.Start();
这是堆栈跟踪:
异常
Castle.MicroKernel.ComponentActivator.ComponentActivatorException
在类型NServiceBus.Serializers.XML.MessageSerializer上设置属性set_MessageTypes时出错,组件ID为NServiceBus.Serializers.XML.MessageSerializer。有关详细信息,请参阅内部异常。
内部异常详情:
System.BadImageFormatException
“试图加载程序 格式不正确。 (例外 来自HRESULT:0x8007000B)“
at System.Reflection.Emit.TypeBuilder._TermCreateClass(Int32 handle, Module module)
at System.Reflection.Emit.TypeBuilder.CreateTypeNoLock()
at System.Reflection.Emit.TypeBuilder.CreateType()
at NServiceBus.MessageInterfaces.MessageMapper.Reflection.MessageMapper.CreateTypeFrom(Type t, ModuleBuilder moduleBuilder)
at NServiceBus.MessageInterfaces.MessageMapper.Reflection.MessageMapper.InitType(Type t, ModuleBuilder moduleBuilder)
at NServiceBus.MessageInterfaces.MessageMapper.Reflection.MessageMapper.Initialize(IEnumerable`1 types)
at NServiceBus.Serializers.XML.MessageSerializer.set_MessageTypes(List`1 value)
答案 0 :(得分:0)
可能是在部署到您的运行时目录的其中一个程序集中,您有一些消息类型引用了某些其他类型,这些类型在错误的平台上编译时无法加载。