title: How to Generate a WSDL in c# without making a http request
body: <p>Greetings,
      I want to write a unit test to make sure that our web services have not changed the WSDL from the last known published version. The reason for this is because any change to a object in the WSDL will cause clients using Apache Axis to fail. Even if all you do is add a not-requred property. So, if there is a change then the developer needs to be alerted because product management will need to communicate to the clients about the change so they can be ready to re-compile their stubs when the new WSDL is published.</p>
  
  <p>So I was hoping to have something like this:</p>
  
  <pre><code>[Test]
  public void TheWSDLHasNotChanged(){
     XmlDocument currentWSDL = SomeMysteryServiceIDontKnowAbout.GetWSDLForWebServiceClass(typeof(UserService));
  
     XmlDocument existingWSDL = new XmlDocument().Load("ExistingWsdl.wsdl");
     Assert.That(currentWSDL, Is.Equal.To(existingWSDL));
  }
  </code></pre>
  
  <p>For obvious reasons I don't want to make a request to a web server (which may or may not even be running when running unit tests). </p>