none
LINQ to Objects 问题 RRS feed

  • 问题

  •  

    我想请问下,我在 LINQ to SQL 中用到的LINQ语句

    Code Snippet

    var results = from o in context.customer_info
    where o.FileName == ""
    group o by o.pickup.ToString( "yyyy'年'MM'月'" ) into groups
    select new { Date = groups.Key, InCome = groups.Sum( v => v.remnant) + groups.Sum( v => v.money) };

     

     

    如果我想在IList<T>中查询的话,这样的语句用不了,请问我该如何做啊?????

    希望能给出代码,谢谢!

    2008年12月9日 7:36

答案

  •  我做了个实验,可以啊。
    1 class Program  
    2 {  
    3     static void Main(string[] args)  
    4     {  
    5         IList<Student> students = new List<Student>(3);  
    6         students.Add(new Student(1, "张三""1", 80));  
    7         students.Add(new Student(2, "李四""2", 90));  
    8         students.Add(new Student(3, "王二麻子""1", 60));  
    9         students.Add(new Student(4, "王二麻子""1", 70));  
    10  
    11         var result = from s in students  
    12                      where s.StudentID >= 2  
    13                      group s by s.ClassName into classes  
    14                      select new { ClassName = classes.Key, Score = classes.Average(x => x.Score) };  
    15  
    16         foreach (var r in result)  
    17         {  
    18             Console.WriteLine(r.ClassName + "_" + r.Score.ToString());  
    19         }  
    20     }  
    21 }  
    22  
    23 public class Student  
    24 {  
    25     public int StudentID { getset; }  
    26     public string StudentName { getset; }  
    27     public string ClassName { getset; }  
    28     public int Score { getset; }  
    29  
    30     public Student(int stuID, string stuName, string className, int score)  
    31     {  
    32         StudentID = stuID;  
    33         StudentName = stuName;  
    34         ClassName = className;  
    35         Score = score;  
    36     }  
    37


    理解的越多,需要记忆的就越少
    2009年2月1日 16:10
    版主

全部回复

  • 不用ILIST用LIST,可以查询的。
    Jing Guo's Facebook profile
    2009年2月1日 10:39
    版主
  •  真的看不出来什么问题 最好能把  Ilist<T> 和T的详细内容铁出来看看
    最近30天回答问题被论坛清除了 大家踊跃提问 踊跃标记正确 帮我重回top10阿~~~5555
    2009年2月1日 13:30
  •  我做了个实验,可以啊。
    1 class Program  
    2 {  
    3     static void Main(string[] args)  
    4     {  
    5         IList<Student> students = new List<Student>(3);  
    6         students.Add(new Student(1, "张三""1", 80));  
    7         students.Add(new Student(2, "李四""2", 90));  
    8         students.Add(new Student(3, "王二麻子""1", 60));  
    9         students.Add(new Student(4, "王二麻子""1", 70));  
    10  
    11         var result = from s in students  
    12                      where s.StudentID >= 2  
    13                      group s by s.ClassName into classes  
    14                      select new { ClassName = classes.Key, Score = classes.Average(x => x.Score) };  
    15  
    16         foreach (var r in result)  
    17         {  
    18             Console.WriteLine(r.ClassName + "_" + r.Score.ToString());  
    19         }  
    20     }  
    21 }  
    22  
    23 public class Student  
    24 {  
    25     public int StudentID { getset; }  
    26     public string StudentName { getset; }  
    27     public string ClassName { getset; }  
    28     public int Score { getset; }  
    29  
    30     public Student(int stuID, string stuName, string className, int score)  
    31     {  
    32         StudentID = stuID;  
    33         StudentName = stuName;  
    34         ClassName = className;  
    35         Score = score;  
    36     }  
    37


    理解的越多,需要记忆的就越少
    2009年2月1日 16:10
    版主
  • 谢谢你啊,可以了,我对LinQ的理解还太浅了,呵呵.
    2009年3月16日 9:09