J'essaie d'envoyer une commande avec NServiceBus 3.0. Tout fonctionne quand j'envoie une commande qui implémente ICommand. Cependant, cela ne fonctionne pas si j'utilise les conventions. La source est ci-dessous. Quelqu'un peut-il me dire ce que je fais mal?Type ... n'a pas été enregistré dans le sérialiseur (application non Web)
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();
}
}
La commande ressemble à ceci:
namespace Messages
{
public class RouteTradeCommand : IRouteTradeCommand
{
public string TradeXml { get; set; }
}
}
Cela fait. Merci! –