I think this is what you need (you need to refer directly to the email address through a known mapping), but I cannot be 100% sure without knowing your structure:
account = (from a in dc.Accounts join em in dc.Emails on a.AccountId equals em.AccountId where em.EmailAddress == email select a).FirstOrDefault();
Why? part:
In short, LINQ has no information about the meaning of what this property is ... and cannot make an SQL query because it does not know, so you get a runtime error when it tries to generate a query from an expression tree.
You cannot use a property in a query if LINQ does not know which table / column / function it maps to without it ... it just cannot convert it to or from SQL.
source share