title: LINQ Group by with multiple properties in VB.Net
body: <p>I spent a lot of time on this problem. I am able to do simple Group By LINQ queries (on one property) but for multiple fields I'm a little stuck...
  Here is a LINQPad sample of what I want to do :</p>
  
  <pre><code>dim lFinal={new with {.Year=2010, .Month=6, .Value1=0, .Value2=0}, 
              new with {.Year=2010, .Month=6, .Value1=2, .Value2=1},
              new with {.Year=2010, .Month=7, .Value1=3, .Value2=4},
              new with {.Year=2010, .Month=8, .Value1=0, .Value2=1},
              new with {.Year=2011, .Month=1, .Value1=2, .Value2=2},
              new with {.Year=2011, .Month=1, .Value1=0, .Value2=0}}
  
  Dim lFinal2 = From el In lFinal
                Group el By Key = new with {el.Year,el.Month}
                Into Group
                Select New With {.Year = Key.Year, .Month=Key.Month, .Value1 = Group.Sum(Function(x) x.Value1), .Value2 = Group.Sum(Function(x) x.Value2)}
  
  lFinal.Dump()
  lFinal2.Dump()
  </code></pre>
  
  <p>The lFinal list has 6 items, I want the lFinal2 to have 4 items : 2010-6 and 2011-1 should group.</p>
  
  <p>Thanks in advance.</p>