title: Exception when running WCF service on Ubuntu by Mono
body: <p>there</p>
  
  <p><strong>Runtime Context:</strong> I write a simple WCF console application by VS2012,running smoothly on Windows, but exception happened when try to run it on Ubuntu by mono</p>
  
  <p><strong>Mono Version</strong>: 2.10.6 </p>
  
  <p><strong>Exception:</strong> </p>
  
  <p>Unhandled Exception: System.InvalidOperationException: None of the listener channel types is supported
    at System.ServiceModel.ServiceHostBase.BuildListener (System.ServiceModel.Description.ServiceEndpoint se, System.ServiceModel.Channels.BindingParameterCollection pl) [0x00000] in :0 
    at System.ServiceModel.ServiceHostBase.BuildChannelDispatcher (System.ServiceModel.Description.ServiceEndpoint se, System.ServiceModel.Channels.BindingParameterCollection commonParams) [0x00000] in :0 
    at System.ServiceModel.ServiceHostBase.InitializeRuntime () [0x00000] in :0 
    at System.ServiceModel.ServiceHostBase.OnOpen (TimeSpan timeout) [0x00000] in :0 
    at System.ServiceModel.Channels.CommunicationObject.Open (TimeSpan timeout) [0x00000] in :0 
    at System.ServiceModel.Channels.CommunicationObject.Open () [0x00000] in :0 
    at DynIPServiceHost.Program.Main (System.String[] args) [0x00000] in :0 </p>
  
  <p>The Only Main function is :</p>
  
  <pre><code>    static void Main(string[] args)
      {     
          try
          {
              Binding binding = new NetTcpBinding();
              ServiceHost sh = new ServiceHost(typeof(DynIPService.DynIPService));
              sh.AddServiceEndpoint("DynIPServiceContract.IDynIPService", binding, "net.tcp://10.161.66.213:808");
              sh.Open();
              foreach (var ep in sh.Description.Endpoints)
              {
                  Console.WriteLine("Address: {0}, ListenUri: {1}, ListenUriMode: {2} ", ep.Address, ep.ListenUri, ep.ListenUriMode);
              }
              Console.WriteLine("Service is running");
              //Console.WriteLine("Current Uri is:);
          }
          catch (Exception ex)
          {
              Console.WriteLine("Error:" + ex.Message);
              throw;
          }
          finally
          {
             Console.ReadKey();
          }
      }
  }
  </code></pre>