NServicebus数据总线
我需要移动一些大文件,我想使用NserviceBus,因为这些文件不会在系统上持久化。我一直在尝试使用v.3中的新databus功能来启动和运行它。 这些文件在一个进程中生成,然后传递到总线上。我的问题是我不能启动公共汽车。下面我有一个示例应用程序,它基本上反映了我的设置,除了在“真实”应用程序中,总线位于不同的应用程序中(还没有推送到服务器,所以我只运行一个dev实例) 我已经更改了Sender类中的代码,以发送一条非Databus消息和一条简单消息,并且效果很好。但是,当我尝试使用它发送一条Databus消息时,我总是得到总线的NullReferenceException。如果有人能给我一个指针,我将非常感激。您需要更改 专用IBus总线{get;set;} 致: 公共IBus总线{get;set;} 要获取总线的依赖注入。您需要更改 专用IBus总线{get;set;} 致: 公共IBus总线{get;set;} 为巴士注射依赖性药物NServicebus数据总线,nservicebus,Nservicebus,我需要移动一些大文件,我想使用NserviceBus,因为这些文件不会在系统上持久化。我一直在尝试使用v.3中的新databus功能来启动和运行它。 这些文件在一个进程中生成,然后传递到总线上。我的问题是我不能启动公共汽车。下面我有一个示例应用程序,它基本上反映了我的设置,除了在“真实”应用程序中,总线位于不同的应用程序中(还没有推送到服务器,所以我只运行一个dev实例) 我已经更改了Sender类中的代码,以发送一条非Databus消息和一条简单消息,并且效果很好。但是,当我尝试使用它发送一条
#region Declarations
private IBus Bus { get; set; }
#endregion
#region Constructors
public Sender()
{
if (Directory.Exists(BasePath))
{
Bus = Configure.Instance
.FileShareDataBus(BasePath)
.UnicastBus().DoNotAutoSubscribe()
.CreateBus()
.Start();
}
}
#endregion
#region Methods
public void SendMessage()
{
// get a list of file names
List<string> fileList = Directory.GetFiles(@"c:\test\").ToList();
Bus.Send<GenericListMessage>(message =>
{
message.Name = "TEST";
message.FileList = new DataBusProperty<List<string>>(fileList);
});
}
#endregion
public class EndpointConfig : IConfigureThisEndpoint, AsA_Client
{
}
internal class SetupDataBus : IWantCustomInitialization
{
public static string BasePath = @"c:\storage\";
public void Init()
{
Configure.Instance
.FileShareDataBus(BasePath)
.UnicastBus()
.DoNotAutoSubscribe();
}
}