我已经用 nservicebus 玩了几个星期了,由于我的本地机器上一切顺利,我决定尝试建立一个测试环境并进行部署。我正在使用 nservicebus 附带的通用主机,并且在本地运行时使用 nservicebus.Integration 配置文件,但想在测试环境中使用 Nservicebus.Production。我设置了一个 sql server 2008 数据库,对我的 app.config 进行了更改,一切似乎都运行良好。但是经过几次尝试,我注意到我的订阅者没有收到消息。我检查了订阅表,它是空的。检查日志后,我注意到以下内容:
2010-05-06 15:07:57,416 [1] 调试 NHibernate.Persister.Entity.AbstractEntityPers ister [(null)] <(null)> - 插入 0:插入 [订阅] (SubscriberEndpo int,MessageType) 值 (? , ?) 2010-05-06 15:07:57,416 [1] 调试 NHibernate.Persister.Entity.AbstractEntityPers ister [(null)] <(null)> - 更新 0:2010-05-06 15:07:57,416 [ 1] DEBUG NHibernate.Persister.Entity.AbstractEntityPers ister [(null)] <(null)> - 删除 0:从 [订阅] 哪里删除订阅者端点 = ?和消息类型 = ?
为什么它会在之后插入然后删除我的订阅?为了排除休眠方言问题,我尝试将订阅存储切换到 oracle 10g 数据库。它的行为完全相同,前 2 次有效,然后我开始看到我的订阅在插入后立即被删除。任何想法是什么导致了这种行为?