using System.Collections.Generic;
public static void Main()
var itemsNotaFiscal = new List<ItemNotaFiscal>
new ItemNotaFiscal(123, 1, 10.0m),
new ItemNotaFiscal(123, 2, 20.0m),
new ItemNotaFiscal(123, 3, 30.0m),
new ItemNotaFiscal(222, 1, 10.0m),
new ItemNotaFiscal(222, 2, 20.0m),
new ItemNotaFiscal(444, 1, 10.0m),
new ItemNotaFiscal(444, 2, 20.0m)
itemsNotaFiscal.AsEnumerable().Join(itemsNotaFiscal.AsEnumerable(),
foreach (var item in query)
Console.WriteLine($"NotaFiscalId: {item.NotaFiscalId}, ProdutoId: {item.ProdutoId}, Valor: {item.Valor:C}");
public class ItemNotaFiscal
public ItemNotaFiscal(int notaFiscalId, int produtoId, decimal valor)
NotaFiscalId = notaFiscalId;
public int NotaFiscalId { get; set; }
public int ProdutoId { get; set; }
public decimal Valor { get; set; }