title: using linq with WMI collection
body: <p>I have doubts about releasing IDisposable objects.</p>
  
  <pre><code>using (ManagementObjectSearcher s = new ManagementObjectSearcher("SELECT * FROM Win32_Service"))
  {
      using (ManagementObject item = s.Get().Cast&lt;ManagementObject&gt;().Last())
      {
  
      }
  }
  </code></pre>
  
  <p>Should I also put collection from s.Get() into using?</p>
  
  <pre><code>using (ManagementObjectSearcher s = new ManagementObjectSearcher("SELECT * FROM Win32_Service"))
  {
      using (ManagementObjectCollection items = s.Get())
      {
          using (ManagementObject item = items.Cast&lt;ManagementObject&gt;().Last())
          {
  
          }
      }
  }
  </code></pre>
  
  <p>Does linq dispose collection (s.Get()) from my first block of code in this topic?</p>
  
  <pre><code>s.Get().Cast&lt;ManagementObject&gt;().Last()
  </code></pre>