title: How can I get LINQ to return the object which has the max value for a given property?
body: <p>If I have a class that looks like:</p>
  
  <pre><code>public class Item
  {
      public int ClientID { get; set; }
      public int ID { get; set; }
  }
  </code></pre>
  
  <p>And a collection of those items...</p>
  
  <pre><code>List&lt;Item&gt; items = getItems();
  </code></pre>
  
  <p>How can I use LINQ to return the single "Item" object which has the highest ID?</p>
  
  <p>If I do something like:</p>
  
  <pre><code>items.Select(i =&gt; i.ID).Max(); 
  </code></pre>
  
  <p>I'll only get the highest ID, when what I actually want returned is the Item object itself which has the highest ID?  I want it to return a single "Item" object, not an int. </p>