Sql server NServiceBus与Sql Server传输错误

Sql server NServiceBus与Sql Server传输错误,sql-server,nservicebus,Sql Server,Nservicebus,我已将NServiceBus配置为使用Sql Server Configure.With() .AutofacBuilder(container) .UseTransport<SqlServer>("aureus") .InMemorySubscriptionStorage() .UnicastBus() .DisableTimeoutManager() .CreateBus()

我已将NServiceBus配置为使用Sql Server

    Configure.With()
        .AutofacBuilder(container)
        .UseTransport<SqlServer>("aureus")
        .InMemorySubscriptionStorage()
        .UnicastBus()
        .DisableTimeoutManager()
        .CreateBus()
        .Start();
我得到了错误。 无法将邮件发送到地址:[队列] 无效的对象名称“队列”

我的配置如下:

  <UnicastBusConfig>
    <MessageEndpointMappings>
      <add Assembly="Aureus.Messages" Namespace="Aureus.Messages" Endpoint="queue"/>
    </MessageEndpointMappings>
  </UnicastBusConfig>

我错过了什么?我无法确定是否需要运行脚本或初始化队列?

而不是

.Start()
你需要

.Start(() => Configure.Instance.ForInstallationOn<Windows>().Install());
.Start(()=>Configure.Instance.ForInstallationOn().Install());

启动队列初始化。

我不是专家,但我必须使用ConnectionString定义作为.UseTransport()的参数,如下所示。在你的帖子中,不清楚“奥里斯”对NServiceBus软件意味着什么

.UseTransport<SqlServer>(ConnectionString())


string ConnectionString()
{
    return "NServiceBus/Transport\" connectionString=\"Data Source=.\\SQLEXPRESS;Initial    Catalog=nservicebus;Integrated Security=True";
}
.UseTransport(ConnectionString())
字符串连接字符串()
{
返回“NServiceBus/Transport\”连接字符串=\“数据源=。\\SQLEXPRESS;初始目录=NServiceBus;集成安全性=True”;
}
我也无法使用配置文件中的ConnectionString名称作为参数。以下是我的配置文件供参考的部分:

<connectionStrings>
  <!-- Message Bus ********************************************** -->
<add name="NServiceBus/Transport" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=nservicebus;Integrated Security=True" />
  <!-- Message Bus ********************************************** -->
</connectionStrings>

此外,对于配置文件中的端点,我必须使用NServiceBus消息处理程序类的名称空间。以下是我的配置文件的端点部分:

<UnicastBusConfig ForwardReceivedMessagesTo="audit">
    <MessageEndpointMappings>
    <!--Note - Endpoint must specify the Namespace of the server-->
    <add Assembly="My.Messages.Assemblyname" Namespace="My.Messages.AssemblyNamespace" Endpoint="MyMessageHandlerAssy.Namespace" />
    </MessageEndpointMappings>
</UnicastBusConfig>

希望这对你有点帮助

<UnicastBusConfig ForwardReceivedMessagesTo="audit">
    <MessageEndpointMappings>
    <!--Note - Endpoint must specify the Namespace of the server-->
    <add Assembly="My.Messages.Assemblyname" Namespace="My.Messages.AssemblyNamespace" Endpoint="MyMessageHandlerAssy.Namespace" />
    </MessageEndpointMappings>
</UnicastBusConfig>