It's been requested before, but at this point it's not possible to do so. One of the main painpoints is aliasing, as linq queries use aliasing for entities everywhere, so when you add your own predicates you have to use the same aliases: problem is, you don't know them when you write your code.