title: WCF "Always generate message contracts" does not generate MessageContract
body: <p>I'm importing a WSDL as a service definition (inbound to my service), and for whatever reason the client is formatting the request such that WCF cannot deserialize it without the proxy classes having <code>MessageContract</code> decorations.  </p>
  
  <p>I've gotten it to work this way by adding the <code>MessageContract</code> attribute on the main container class, which is fine because WCF builds these as partial classes, which means I can decorate my part and leave the generated part alone.  However, in order to correctly deserialize the properties on the main container class, I have to decorate them with <code>MessageBodyMember</code> attributes that specify the namespace.</p>
  
  <p>This is obviously a Bad Thing®, as it means that every time I regenerate from the WSDL I'm going to lose the ability to receive messages from the client.  I've already set "Always generate message contracts" on the service reference configuration, but it appears to be a lie - the message contracts are not generated, regardless of whether I leave my partial class decorated with <code>MessageContract</code> or not.</p>
  
  <p>Is there any way I can force WCF to generate these <code>MessageContract</code>s?</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>I'm not sure whether it's pertinent, but when svcutil generates the proxy class, it decorates the properties with </p>
  
  <pre><code>[XmlElement(Order=0)]
  //Property definition
  </code></pre>
  
  <p>And when I add the <code>MessageContract</code> attribute the service breaks with the message </p>
  
  <blockquote>
    <p>Explicit sequencing may not be used on parameters or return values.  Please remove Order property from custom attributes.</p>
  </blockquote>
  
  <p>I have to remove all of the Order directives from the generated <code>XmlElement</code> attributes before I can successfully call the service.</p>