title: Design Strongly typed object from XML
body: <p>I have a couple of XML files that I need to work with, and I've always used the XElement objects and pulled the data via the attribute name or the XElement's value.</p>
  
  <p>I know there has to be a better way of using XML in C#.  What is the best way to either auto generate or manually generate a strong typed object from the XML file?</p>
  
  <p>The xml is in the form of </p>
  
  <pre><code>&lt;Group id="####"&gt;
      &lt;title&gt;Some Title&lt;/title&gt;
      &lt;description&gt;some description&lt;/description&gt;
      &lt;Rule id="ID_##" severity="medium" weight="10.0"&gt;
          &lt;version&gt;1.001&lt;/version&gt;
          &lt;title&gt;Another Title&lt;/title&gt;
          &lt;description&gt;Very long description&lt;/description&gt;
          &lt;fixtext fixref="F-31r1_fix"&gt;Description of fix&lt;/fixtext&gt;
          &lt;fix id="F-31r1_fix"/&gt;
          &lt;check system="C-7883r4_chk"&gt;
              &lt;check-content-ref name="M" href="URI"/&gt;
              &lt;check-content&gt;Content&lt;/check-content&gt;
          &lt;/check&gt;
      &lt;/Rule&gt;
  &lt;/Group&gt;
  </code></pre>
  
  <p>If I could parse an XML file into a <code>List&lt;Group&gt;</code> that would be the best.</p>
  
  <p>The only way I can think to do it is manually create the Group, Rule, and Check objects and manually assign the data.  If there is a better, more automated way to do this, please let me know!</p>