0

我在NHibernate中使用NServiceBus并在我自己的进程中托管总线。我使用的配置是:NServiceBus 4.6.5 NHibernate的佐贺Persister不坚持佐贺数据

Configure.ScaleOut(s => s.UseSingleBrokerQueue()); 
     Configure.Transactions.Enable(); 
     Configure.Features.Enable<Sagas>(); 
     Configure.Serialization.Xml(); 

     return 
      Configure.With() 
        .DefaultBuilder() 
        .DefiningCommandsAs(type => type.Namespace != null && type.Namespace.EndsWith("Contracts.Commands")) 
        .DefiningEventsAs(type => type.Namespace != null && type.Namespace.EndsWith("Contracts.Events")) 
        .DefiningMessagesAs(type => type.Namespace != null && type.Namespace.EndsWith("Contracts.Messages")) 
        .RijndaelEncryptionService() 
        .UseTransport<RabbitMQ>() 
        .PurgeOnStartup(false) 
        .UnicastBus() 
        .RunHandlersUnderIncomingPrincipal(false) 
        .ImpersonateSender(false) 
        .LoadMessageHandlers() 
        .UseNHibernateSubscriptionPersister() 
        .UseNHibernateSagaPersister() 
        .UseNHibernateTimeoutPersister() 
        .DisableTimeoutManager() 
        .CreateBus() 
        .Start 
       (() => { 
        Configure.Instance.LicensePath(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "NServiceBus-Licence.xml")); 
        Configure.Instance.ForInstallationOn<Windows>().Install(); 
       }); 

有:

<connectionStrings> 
    <add name="NServiceBus/Transport" connectionString="host=localhost" /> 
    <add name="NServiceBus/Persistence" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=testdb;Persist Security Info=True; Connect Timeout=200; Pooling=True; Max Pool Size=5000; Async=true; Integrated Security=SSPI;" providerName="System.Data.SqlClient" /> 
</connectionStrings> 
<appSettings> 
    <add key="NServiceBus/Persistence/NHibernate/dialect" value="NHibernate.Dialect.MsSql2012Dialect" /> 
    <add key="NServiceBus/Persistence/NHibernate/connection.provider" value="NHibernate.Connection.DriverConnectionProvider" /> 
    <add key="NServiceBus/Persistence/NHibernate/connection.driver_class" value="NHibernate.Driver.Sql2008ClientDriver" /> 
</appSettings> 

这种配置与我已经在我的传奇,这是伟大指定的字段我的SQL Server数据库中创建了我的传奇表。

但是,当我的佐贺运行并完成NServiceBus似乎没有插入记录到我的佐贺表。

表格在那里,只是没有数据。

这应该是预期的吗?在saga成功完成后,NServiceBus是否会在持久性中删除传奇条目?

回答

1

我自己的问题的答案是是的

NServiceBus在传奇完成后删除传奇数据表中的条目。

相关问题