title: LINQ to entities - left join with condition
body: <p>I have a table GameVersion with FK (allowing nulls) to Game table. When I do this:</p>
  
  <pre><code>    GameVersion[] q = (from gv in db.GameVersion.Include("Game")
                         select gv).ToArray();
  </code></pre>
  
  <p>It works OK, while iterating GameVersion objects I can see null references to Game in some records (just like on the databse), so it works like left join.</p>
  
  <p>However, when I slightly modify the query and add searching by game name</p>
  
  <pre><code>    GameVersion[] q = (from gv in db.GameVersion.Include("Game")
                         where gv.Game.DisplayName.Contains("a")
                         select gv).ToArray();
  </code></pre>
  
  <p>It suddenly behaves like inner join (no longer selects null references). I don't quite understand this behaviour. Why is this happening and how do I make the query work? I want to select all GameVersions, even the ones with Game==null plus apply a condition on one of the Game columns.</p>