title: Deserializing XML with unknown element order
body: <p>I'm trying to implement a client for a service with a really deficient spec.  It's SOAP-like, although it has no WSDL or equivalent file.  The spec also doesn't provide any information about the correct ordering of elements - they're listed alphabetically in the spec, but the service returns an XML parse error if they're out of order in the request (said order to be derived by examining the examples).</p>
  
  <p>I can <em>work</em> with this for submitting requests, even if it's a pain.  However, I don't know how to handle responses correctly.</p>
  
  <p>With both <code>SoapEnvelope</code> and directly with <code>XmlSerializer</code>, if the response contains an element I haven't yet ordered correctly, it shows up as <code>null</code> on my object.  Once again, I can manage to work with this, and manually order the class properties <a href="https://stackoverflow.com/questions/3282991/serialize-deserialize-objects-order-of-fields-matters">with <code>Order</code> attributes</a>, but I have no way to tell whether the original XML has a field that I didn't order correctly and thus got left as <code>null</code>.</p>
  
  <p>This leads me to the current question:  <strong>How can I check if the XmlSerializer dropped a field</strong>?</p>