Linq基础

130 阅读1分钟

Linq基础 一、关键词: 1、form xx in xxx select => xx

static void Main(string[] args)
        {
            using (Model1 db = new Model1()) {
                var qu = from s in db.TBLogins
                         select s;
                foreach (var item in qu)
                {
                    Console.WriteLine(item.MobileNumber);
                }
            }
        }

where 筛选

static void Main(string[] args)
        {
            using (Model1 db = new Model1()) {
                var qu = from s in db.TBUsers
                         where s.Avatar!=null
                         select s;
                foreach (var item in qu)
                {
                    Console.WriteLine(item.Avatar);
                }
            }
        }

group...into:分组

static void Main(string[] args)
        {
            using (Model1 db = new Model1()) {
                var qu = from s in db.TBUsers
                         group s by s.Sex
                         into g
                         select g;
                foreach (var item in qu)
                {
                    Console.WriteLine(item.Key);

                    Console.WriteLine(item.Count());
                }
            }
            Console.ReadKey();
        }

orderby...ascending(升序),descending(降序) 排序

static void Main(string[] args)
        {
            using (Model1 db = new Model1()) {
                var qu = from s in db.TBUsers
                         group s by s.Sex
                         into g
                         orderby g.Key descending
                         select g;
                foreach (var item in qu)
                {
                    Console.WriteLine(item.Key);

                    Console.WriteLine(item.Count());
                }
            }
            Console.ReadKey();
        }

join...on..equal :表的关联

static void Main(string[] args)
        {
            using (Model1 db = new Model1()) {
                var qu = from s in db.TBUsers
                         join a in db.TBLogins
                         on s.Id equals a.Id
                         select new { s, a };
                foreach (var item in qu)
                {
                    Console.WriteLine(item.a.MobileNumber);

                    Console.WriteLine(item.s.NickName);
                }
            }
            Console.ReadKey();
        }

let:临时变量

static void Main(string[] args)
        {
            using (Model1 db = new Model1()) {
                var qu = from s in db.TBUsers
                         let a = s.NickName.Length
                         select new { a1 = a, s };
                foreach (var item in qu)
                {
                    Console.WriteLine(item.a1);
                }
            }
            Console.ReadKey();
        }