title: Suppressing "is never used" and "is never assigned to" warnings in C#
body: <p>I have a HTTPSystemDefinitions.cs file in C# project which basically describes the older windows ISAPI for consumption by managed code.</p>
  
  <p>This includes the complete set of Structures relevant to the ISAPI not all or which are consumed by code.  On compilation all the field members of these structures are causing a warning like the following:- </p>
  
  <blockquote>
    <p>Warning  Field 'UnionSquare.ISAPI.HTTP_FILTER_PREPROC_HEADERS.SetHeader' is never assigned to, and will always have its default value null</p>
  </blockquote>
  
  <p>or</p>
  
  <blockquote>
    <p>Warning  The field 'UnionSquare.ISAPI.HTTP_FILTER_PREPROC_HEADERS.HttpStatus' is never used</p>
  </blockquote>
  
  <p>Can these be disabled with <code>#pragma warning disable</code>?  If so what would the corresponding error numbers be?  If not is there anything else I can do?  Bear in mind that I only what to do this for this file, its important that I get see warnings like these coming from other files.</p>
  
  <p><strong>Edit</strong></p>
  
  <p>Example struct:-</p>
  
  <pre><code>struct HTTP_FILTER_PREPROC_HEADERS
  {
      //
      //  For SF_NOTIFY_PREPROC_HEADERS, retrieves the specified header value.
      //  Header names should include the trailing ':'.  The special values
      //  'method', 'url' and 'version' can be used to retrieve the individual
      //  portions of the request line
      //
  
      internal GetHeaderDelegate GetHeader;
      internal SetHeaderDelegate SetHeader;
      internal AddHeaderDelegate AddHeader;
  
      UInt32  HttpStatus;               // New in 4.0, status for SEND_RESPONSE
      UInt32  dwReserved;               // New in 4.0
  }
  </code></pre>