I was just doing a basic join and I got that error.
I investigated the problem and I can see that the EF generated a query which refers to the 'id' field of your fake query entity, but you didn't put that column in your table literal in the generated SQL code.
So, I changed MappingHelper so that the 'id' column is always generated in the SQL code (just with values of 1, 2, 3, 4, ...), and it works now.
Using EF 6.1.3
I was just doing a basic join and I got that error. I investigated the problem and I can see that the EF generated a query which refers to the 'id' field of your fake query entity, but you didn't put that column in your table literal in the generated SQL code.
So, I changed MappingHelper so that the 'id' column is always generated in the SQL code (just with values of 1, 2, 3, 4, ...), and it works now.