title: WCF - handle versioning
body: <p>If I need to go from this service contract:</p>
  
  <pre><code>[ServiceContract(Namespace="http://api.x.com/Svc1")]
  public interface IService1
  {
     [OperationContract(Name = "AddCustomer")]
     bool AddCustomer(DTOCustomer1 customer);
  }
  </code></pre>
  
  <p>to this: </p>
  
  <pre><code>[ServiceContract(Namespace="http://api.x.com/Svc1")]
  public interface IService1
  {
     [OperationContract(Name = "AddCustomer")]
     bool AddCustomer(DTOCustomer2 customer);
  }
  </code></pre>
  
  <p>and according to this good article: <a href="http://blogs.msdn.com/b/craigmcmurtry/archive/2006/07/23/676104.aspx?PageIndex=2#comments" rel="nofollow">Versioning WCF</a> I understand that when data contract is changed there is a need of defining a new vs of data contract in new namespace followed by defining a new vs of service contract in new namespace, after which a new endpoint should be added. </p>
  
  <p>How exactly am I suppose to have this done. Is there an example anywhere? Could you write something based on my service contract shown above?</p>
  
  <p>Thank you in advance!</p>