Ich versuche, einen Befehl mit NServiceBus 3.0 zu senden. Alles funktioniert, wenn ich einen Befehl sende, der ICommand implementiert. Es funktioniert jedoch nicht, wenn ich die Konventionen verwende. Die Quelle ist unten. Kann mir jemand sagen, was ich falsch mache?Typ ... wurde nicht im Serializer (nicht Web-App) registriert
public class Program
{
public static NServiceBus.IBus Bus { get; private set; }
static void Main(string[] args)
{
ConfigureBus();
var command = new RouteTradeCommand() { TradeXml = "<trade />" };
Bus.Send("[email protected]", command);
}
private static void ConfigureBus()
{
Bus = Configure.With()
.DefaultBuilder()
.XmlSerializer()
.MsmqTransport()
.UnicastBus()
.DefiningCommandsAs(t => t.Namespace != null && t.Namespace.EndsWith("Messages"))
.SendOnly();
}
}
Der Befehl sieht wie folgt aus:
namespace Messages
{
public class RouteTradeCommand : IRouteTradeCommand
{
public string TradeXml { get; set; }
}
}
Das war es. Vielen Dank! –