score:0

void main()
{
    var fruits = new list<fruit>
    {
        new fruit{ groceryid = 1,name = "apple", productid = 1},
        new fruit{ groceryid = 1,name = "orange", productid = 2},
    };

    var groceries = new list<grocery>
    {
        new grocery { groceryid = 1, name = "fruits and vegetables" },
        new grocery { groceryid = 2, name = "drinks and snacks" },
    };

    var joinedresults = fruits.join(groceries, // references the groceries declared above,
                                    fruit => fruit.groceryid,  // join by groceryid located on the fruit
                                    grocery => grocery.groceryid,  // join by the groceryid located on grocery 
                                    (product, grocery) => new 
                                    {
                                        productid = product.productid, 
                                        productname = product.name, 
                                        groceryname = grocery.name
                                    });
}
public class fruit
{
    public int productid { get; set; }
    public int groceryid { get; set; }
    public string name { get; set; }
}

public class grocery
{
    public int groceryid { get; set; }
    public string name { get; set; }
}

Related Query