I\'ve been reading on the blogosphere for the past week that Linq to SQL is dead [and long live EF and Linq to Entities]. But when I read the overview on MSDN, it appeared to m
Actually, the EF does not generate EntitySQL when translating LINQ queries. In the EF we have a data structure-based representation for all queries called CQT or canonical query trees. Both the LINQ translator and the EntitySQL parser produce CQTs, and the rest of the query translation pipeline uses CQTs (and other internal intermediate forms), which after various transforms make it to the ADO.NET provider (as a store-level CQT), which is then responsible for translating it to the backend's SQL dialect. So the paths are LINQ -> CQT -> SQL or EntitySQL -> CQT -> SQL.