linq联合查询例子

where_model wm=new  where_model ();
    wm.kid = 58;
    IList<teacher> mlist = BasicDataProxy.teacher_GetList(wm);

    IList<kin_roleinfo> klist = BasicDataProxy.kin_roleinfo_GetList(wm);

    mlist = (from x in mlist
              where (x.title == "" && x.did != 1324 && x.userid>0)
              orderby x.did
              select x
              ).ToList<teacher>();

    var list = (from x in mlist
                join p in klist on x.kid equals p.kid
                where (p.rid > 1000)
                select new kininfo()
                {

                    kid=x.kid,
                    rid=p.rid,
                    title=x.title,
                    uname=x.uname
                });

 

 

var list = (from x in mlist
                join p in klist on x.kid equals p.kid
                where (p.rid > 1000)
                group p by new {
                    x.kid,
                    x.uname
                }into g 
                select new kininfo()
                {

                    kid = g.Count(),
                    rid = g.Sum(x=>x.rid+g.Key.kid),
                    uname=g.Key.uname
                });

你可能感兴趣的:(查询,联合)