using System.Collections.Generic;
public static void Main()
List<Livro> livros = new List<Livro>
new Livro{LivroID=1, Nome="Culinária Diária"},
new Livro{LivroID=2, Nome=".NET e ASP.NET Core 2"},
new Livro{LivroID=3, Nome="Jquery"},
new Livro{LivroID=4, Nome="Novas regras da Legislação"},
new Livro{LivroID=5, Nome="Novo Código Cívil"}
List<Venda> vendas = new List<Venda>{
new Venda{VendaID=1, LivroID=1, ModoPagamento="Cheque"},
new Venda{VendaID=2, LivroID=5, ModoPagamento="Cartão de Crédito"},
new Venda{VendaID=3, LivroID=1, ModoPagamento="Dinheiro"},
new Venda{VendaID=4, LivroID=3, ModoPagamento="Cheque"},
new Venda{VendaID=5, LivroID=5, ModoPagamento="Cheque"},
new Venda{VendaID=6, LivroID=4, ModoPagamento="Dinheiro"}
var orderForBooks = from livro in livros
on livro.LivroID equals venda.LivroID
from b in a.DefaultIfEmpty(new Venda())
ModoPagamento = b.ModoPagamento
foreach (var item in orderForBooks)
public int LivroID { get; set; }
public string Nome { get; set; }
public int VendaID { get; set; }
public int LivroID { get; set; }
public string ModoPagamento { get; set; }