title: nhibernate projection to anonymous type
body: <p>I have a query to get count of <code>Child</code> objects for a <code>Parent</code> object.<br>
  I need to convert the result into a <code>List&lt;KeyValuePair&lt;int, int&gt;&gt;</code><br>
  Can't figure out.</p>
  
  <pre><code>Child childAlias = null;
  Parent parentAlias = null;
  int[] parentIds = new int[]{1,2,3};
  
  var temp = sess.QueryOver&lt;Parent&gt;()
     .JoinQueryOver(p =&gt; p.Children, () =&gt; childAlias)
     .Where(c =&gt; c.Parent.Id.IsIn(parentIds))
     .Select(Projections.ProjectionList()
        .Add(Projections.GroupProperty(Projections.Property&lt;Parent&gt;(x =&gt; x.Id)))
        .Add(Projections.Count(() =&gt; childAlias.Id)))
    .List&lt;object[]&gt;();
  </code></pre>
  
  <p>I need this <code>List&lt;object[]&gt;</code> to be a <code>List&lt;KeyValuePair&lt;int, int&gt;&gt;</code><br>
  I know it involves a <code>Select</code> with an annonymous object but can't figure out </p>