Group Join
Jasurbek Xasanboyev
class Program
{
static void Main(string[] args)
{
var students = new List<Student>()
{
new Student() { Id = 1, Name = "Jasurbek", AddressId = 1},
new Student() { Id = 2, Name = "Xondamir", AddressId = 1},
new Student() { Id = 3, Name = "Shoxruh", AddressId = 3},
new Student() { Id = 4, Name = "Shaxzod", AddressId = 4},
new Student() { Id = 5, Name = "Abdulloh", AddressId = 2}
};
var addresses = new List<Address>()
{
new Address() {Id = 1, AddressLine = "Line 1"},
new Address() {Id = 2, AddressLine = "Line 2"},
new Address() {Id = 3, AddressLine = "Line 3"},
new Address() {Id = 4, AddressLine = "Line 4"},
};
var MethodSyntax = addresses.GroupJoin(students, address => address.Id,
student => student.AddressId, (address, student) => new { address, student}).ToList();
foreach (var item in MethodSyntax)
{
Console.WriteLine($"Line: {item.address.AddressLine}");
foreach (var item2 in item.student)
{
Console.WriteLine($"Name: {item2.Name}");
}
}
/*OUTPUT: Line: Line 1
Name: Jasurbek
Name: Xondamir
Line: Line 2
Name: Abdulloh
Line: Line 3
Name: Shoxruh
Line: Line 4
Name: Shaxzod */
}
}
class Student
{
public int Id { get; set; }
public string Name { get; set; }
public int AddressId { get; set; }
}
class Address
{
public int Id { get; set; }
public string AddressLine { get; set; }
}Last updated
Was this helpful?