1

我希望我的 NServiceBus 传奇存在于单独的 SQL Server 架构中。为 sagas 创建表的自动生成的 SQL 脚本确实使用自定义模式名称,但如果模式不存在则不创建模式,因此必须事先手动创建模式。

这种行为是设计使然吗?在执行自动生成的 SQL 之前,是否有一个钩子可以用来包含创建模式的自定义代码?

配置如下所示:

public EndpointConfiguration Configure(EndpointConfiguration configuration)
        {
            if (configuration == null) throw new ArgumentNullException(nameof(configuration));

            var persistence = configuration.UsePersistence<SqlPersistence>();

            persistence.SqlDialect<SqlDialect.MsSqlServer>().Schema("nsb");
            persistence.TablePrefix(string.Empty);

            persistence.ConnectionBuilder(() => new SqlConnection(_configuration.GetConnectionString("<ConnectionStringName>")));

            return configuration;
        }
4

1 回答 1

0

SQL Persister 假定目录和模式在脚本执行之前就已经存在。

于 2020-02-27T08:30:40.190 回答