在我的程序中.cs
public static IBus Bus { get; set; }
[STAThread]
static void Main()
{
Bus = Configure.With()
.DefaultBuilder()
.XmlSerializer()
.MsmqTransport()
.PurgeOnStartup(true)
.UnicastBus()
.SendOnly();
var order = new PlaceOrder
{
OrderID = Guid.NewGuid(),
ProductID = Guid.NewGuid(),
CustomerID = Guid.NewGuid(),
};
Bus.Send(order);
}
我得到的错误:
没有为邮件指定目的地:MessagingContracts.PlaceOrder
MessagingContracts.PlaceOrder是类库中的一个类:
namespace MessagingContracts
{
public class PlaceOrder:IMessage
{
public Guid CustomerID { get; set; }
public Guid OrderID { get; set; }
public Guid ProductID { get; set; }
}
}
我的终点在app.config中配置为:
<configSections>
<section name="MsmqTransportConfig" type="NServiceBus.Config.MsmqTransportConfig, NServiceBus.Core" />
<section name="UnicastBusConfig" type="NServiceBus.Config.UnicastBusConfig, NServiceBus.Core"></section>
</configSections>
<UnicastBusConfig>
<MessageEndpointMappings>
<add Messages="MessagingContracts" Endpoint="MessagingEndPoint"></add>
</MessageEndpointMappings>
</UnicastBusConfig>
我的端点类
namespace MessagingEndPoint
{
public class EndPointConfig : IConfigureThisEndpoint, AsA_Server
{
}
}
如何更正该错误并在我的私人队列(MessagingEndPoint)中查看我的消息?关于这个错误原因的任何输入都将非常有帮助。
好吧,这个成功了&在send方法中提及端点名称(目的地)会将消息传递到队列。
Bus.Send("MessagingEndPoint", order); //use this
而不是
Bus.Send(order);