最近比较喜欢LINQ,真是碉堡了。下面写了个例子演示一下LINQ对List<T>的操作,包括排序、where条件、选部分数据等查询。最近偷懒,不写注释了,大家自己看一下就明白了~
测试用的BLL和Model
03 |
public List<TestModel> GetList()
|
05 |
return new List<TestModel>()
|
07 |
new TestModel(){ Id=1, Name="RYWE", Content="IOJADJ", Posttime=DateTime.Now.AddHours(1) },
|
08 |
new TestModel(){ Id=2, Name="JGFA", Content="CAFYRE", Posttime=DateTime.Now.AddHours(0) },
|
09 |
new TestModel(){ Id=4, Name="PIOU", Content="OVXZLA", Posttime=DateTime.Now.AddHours(5) },
|
10 |
new TestModel(){ Id=5, Name="OUIH", Content="AIPJLM", Posttime=DateTime.Now.AddHours(3) },
|
11 |
new TestModel(){ Id=7, Name="ZCXI", Content="KUQOPA", Posttime=DateTime.Now.AddHours(7) }
|
16 |
public class TestModel
|
18 |
public int Id { get; set; }
|
19 |
public string Name { get; set; }
|
20 |
public string Content { get; set; }
|
21 |
public DateTime Posttime { get; set; }
|
27 |
public override string ToString()
|
29 |
StringBuilder sb = new StringBuilder();
|
30 |
sb.Append(String.Format("{0}={1}, ", "Id", this.Id));
|
31 |
sb.Append(String.Format("{0}={1}, ", "Name", this.Name));
|
32 |
sb.Append(String.Format("{0}={1}, ", "Content", this.Content));
|
33 |
sb.Append(String.Format("{0}={1}", "Posttime", this.Posttime));
|
测试代码:
01 |
static void Main(string[] args)
|
04 |
TestBLL bll = new TestBLL();
|
05 |
List<TestModel> mList = bll.GetList();
|
07 |
var query = from m in mList
|
10 |
var query1 = from m in mList
|
14 |
var query2 = from m in mList
|
16 |
orderby m.Id descending
|
19 |
var query3 = from m in mList
|
20 |
orderby m.Posttime descending
|
23 |
var query4 = (from m in mList
|
26 |
var query5 = from m in mList
|
27 |
orderby m.Name ascending
|
30 |
PrintList("from m in mList select m", query);
|
31 |
PrintList("from m in mList where m.Id > 2 select m", query1);
|
32 |
PrintList("from m in mList select m", query2);
|
33 |
PrintList("from m in mList orderby m.Posttime descending select m", query3);
|
34 |
PrintList("(from m in mList where select m).Take(3)", query4);
|
35 |
PrintList("from m in mList orderby m.Name ascending select m", query5);
|
41 |
private static void PrintList(string expression, IEnumerable<TestModel> query)
|
43 |
Console.WriteLine("Query expression: " + expression);
|
44 |
Console.WriteLine("__________________________________________________________________");
|
45 |
foreach (var item in query)
|
47 |
Console.WriteLine(item.ToString());
|
49 |
Console.WriteLine("\n");
|
有图有真相:

本文系转载,具体哪的 问百度吧 我找快照看的
相关文章: