Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como você faz várias associações internas no Linq to Entities


A resposta de Jon funcionará, mas IMHO usar join no LINQ to Entities geralmente é errado , porque duplica o código em seu modelo. Eu posso reescrever a consulta de Jon de uma maneira muito mais simples em L2E:
var query = from customer in db.Customers
            from order in customer.Orders
            from product in order.Products
            from info in product.Info
            select new
            {
                customer.Name, 
                info.BriefDescription
            }

Isso é cerca de 50% da digitação e 0% do código duplicado. Considere que seus relacionamentos já foram definidos em seu banco de dados e em seu modelo. Você realmente deseja duplicá-los novamente em cada consulta que escrever e quebrar suas consultas quando refatorar seu modelo?