class ShowAllUsers
{
static void Main()
{
var query = from user in SampleData.AllUsers
select user;
//query
//System.Linq.Enumerable.WhereSelectListIterator
foreach (var user in query)
//foreach 后 query 后 in 调用 select 后 var user
// var user多次赋值 null
//{User: Tim Trotter (Tester)}
//{User: Tara Tutu (Tester)}
//{User: Deborah Denton (Developer)}
//{User: Darren Dahlia (Developer)}
//{User: Mary Malcop (Manager)}
//{User: Colin Carton (Customer)}
{
Console.WriteLine(user);//WriteLine会调用重载的ToString方法
//为每个实体重写了ToString方法
}
}
}
public class User
{
public string Name { get; set; }
public UserType UserType { get; set; }
public User (string name, UserType userType)
{
Name = name;
UserType = userType;
}
public override string ToString()
{
return string.Format("User: {0} ({1})", Name, UserType);
}
}
public static class Users
{
public static readonly User TesterTim = new User("Tim Trotter", UserType.Tester);
public static readonly User TesterTara = new User("Tara Tutu", UserType.Tester);
public static readonly User DeveloperDeborah = new User("Deborah Denton", UserType.Developer);
public static readonly User DeveloperDarren = new User("Darren Dahlia", UserType.Developer);
public static readonly User ManagerMary = new User("Mary Malcop", UserType.Manager);
public static readonly User CustomerColin = new User("Colin Carton", UserType.Customer);
}
public enum UserType : byte
{
Customer,
Developer,
Tester,
Manager,
} class ShowAllUsers
{
static void