title: Type ... was not registered in the serializer (non web app)
body: <p>I am trying to send a command with NServiceBus 3.0.  Everything works when I send a command that implements ICommand.  However, it does not work if I use the conventions.  The source is below.  Can someone tell me what I am doing wrong?</p>
  
  <pre class="lang-cs prettyprint-override"><code>public class Program
  {
      public static NServiceBus.IBus Bus { get; private set; }
  
      static void Main(string[] args)
      {
          ConfigureBus();
  
          var command = new RouteTradeCommand() { TradeXml = "&lt;trade /&gt;" };
          Bus.Send("BrokerQueue@DATPCDI041", command);
      }
  
      private static void ConfigureBus()
      {
          Bus = Configure.With()
              .DefaultBuilder()
              .XmlSerializer()
              .MsmqTransport()
              .UnicastBus()
              .DefiningCommandsAs(t =&gt; t.Namespace != null &amp;&amp; t.Namespace.EndsWith("Messages"))
              .SendOnly();
      }
  }
  </code></pre>
  
  <p>The command looks like this:</p>
  
  <pre class="lang-cs prettyprint-override"><code>namespace Messages
  {
      public class RouteTradeCommand : IRouteTradeCommand
      {
          public string TradeXml { get; set; }
      }   
  }
  </code></pre>