title: Run WCF ServiceHost with multiple contracts
body: <p>Running a ServiceHost with a single contract is working fine like this:</p>
  
  <pre><code>servicehost = new ServiceHost(typeof(MyService1));
  servicehost.AddServiceEndpoint(typeof(IMyService1), new NetTcpBinding(), "net.tcp://127.0.0.1:800/MyApp/MyService1");
  servicehost.Open();
  </code></pre>
  
  <p>Now I'd like to add a second (3rd, 4th, ...) contract. My first guess would be to just add more endpoints like this:</p>
  
  <pre><code>servicehost = new ServiceHost(typeof(MyService1));
  servicehost.AddServiceEndpoint(typeof(IMyService1), new NetTcpBinding(), "net.tcp://127.0.0.1:800/MyApp/MyService1");
  servicehost.AddServiceEndpoint(typeof(IMyService2), new NetTcpBinding(), "net.tcp://127.0.0.1:800/MyApp/MyService2");
  servicehost.Open();
  </code></pre>
  
  <p>But of course this does not work, since in the creation of ServiceHost I can either pass MyService1 as parameter or MyService2 - so I can add a lot of endpoints to my service, but all have to use the same contract, since I only can provide one implementation?<br>
  I got the feeling I'm missing the point, here. Sure there must be some way to provide an implementation for every endpoint-contract I add, or not?</p>