title: Is this the right way to eager load child collections in NHibernate
body: <p>I have used too much time to find a nice way to eager load child collections. so far this is what I got. It's working but I find it hard to believe that this is the best way to write this query</p>
  
  <pre><code> [Fact]
      public void EagerLoadQueryOverWithFutureTest()
      {
          const long journalNr = 1470;
  
          var query = _repo.QueryOver().Where(s =&gt; s.JournalNr == journalNr).Future&lt;Sag&gt;();
          var sagsansoegning = _repo.QueryOver().Where(an =&gt; an.JournalNr == journalNr).Fetch(x =&gt; x.Sagsansoegning).Eager.Future&lt;Sag&gt;();
          var noter = _repo.QueryOver().Where(n =&gt; n.JournalNr == journalNr).Fetch(x =&gt; x.Noter).Eager.Future&lt;Sag&gt;();
          var filer = _repo.QueryOver().Where(f =&gt; f.JournalNr == journalNr).Fetch(x =&gt; x.Filer).Eager.Future&lt;Sag&gt;();
          var emails = _repo.QueryOver().Where(e =&gt; e.JournalNr == journalNr).Fetch(x =&gt; x.Emails).Eager.Future&lt;Sag&gt;();
          var journal = _repo.QueryOver().Where(j =&gt; j.JournalNr == journalNr).Fetch(x =&gt; x.Journal).Eager.Future&lt;Sag&gt;();
          var sagsTilstand = _repo.QueryOver().Where(t =&gt; t.JournalNr == journalNr).Fetch(x =&gt; x.Tilstand).Eager.Future&lt;Sag&gt;();
          var boligsocialEvalueringer = _repo.QueryOver().Where(b =&gt; b.JournalNr == journalNr).Fetch(x =&gt; x.BoligsocialEvaluering).Eager.Future&lt;Sag&gt;();
          var result = query.SingleOrDefault();
          result.JournalNr.Should().Be(journalNr);
          result.Emails.Should().HaveCount(c =&gt; c &gt; 20);
          result.Filer.Should().HaveCount(c =&gt; c &gt; 20);
      }
  </code></pre>