using System;
using System.Collections.Generic;
using System.Linq;
namespace WinningConsoleApp
{
class Program
{
static void Main(string[] args)
{
List<User> userList = InitUserList();
List<Student> studentList = InitStudentList();
var result1 = from user in userList
join student in studentList on user.ID equals student.UserID
where user.ID > 1
select new { UserID = user.ID, user.Name, student.ClassName };
foreach (var item in result1)
{
Console.WriteLine("UserID:{0}, Name:{1}, ClassName:{2}", item.UserID, item.Name, item.ClassName);
}
Console.ReadKey();
}
private static List<User> InitUserList()
{
return new List<User>() {
new User{ ID = 1, Name = "name1", Age = 13 },
new User{ ID = 2, Name = "name2", Age = 14 },
new User{ ID = 3, Name = "name3", Age = 15 }
};
}
private static List<Student> InitStudentList()
{
return new List<Student>() {
new Student { ID = 1, UserID = 1, ClassName = "className1" },
new Student { ID = 2, UserID = 2, ClassName = "className1" },
new Student { ID = 3, UserID = 3, ClassName = "className2" }
};
}
}
internal class Student
{
internal int ID { get; set; }
internal int UserID { get; set; }
internal string ClassName { get; set; }
}
internal class User
{
internal int ID { get; set; }
internal string Name { get; set; }
internal int Age { get; set; }
}
}
/*输出
UserID:2, Name:name2, ClassName:className1
UserID:3, Name:name3, ClassName:className2
*/