• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

c#Linq查询

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Linq支持主要的查询:

1、对象集合(IEnumerable或者IEnumerable<T>)

2、SQL数据库

3、XML文档

 

先对对象集合做一个解释:

查询的是集合,包括List<T>,Dictionay<T,K>,HashTable<T>,ArrayList这些集合都继承了IEnumerable接口。

        public void Test1()
        {
            List<string> names = new List<string>();
            Dictionary<string, int> per = new Dictionary<string, int>();
            Hashtable ht = new Hashtable();
            ArrayList al = new ArrayList();
        }

对弱变量类型var简单使用

        public void Test2()
        {
            string name = "Messi";
            int age = 20;
            Console.WriteLine(name);
            Console.WriteLine(age);

            var name1 = "kaka";
            var age1 = 18;
            Console.WriteLine(name1);
            Console.WriteLine(age1);
        }

 

举例使用Linq查询和一般查询的区别:其实Linq查询在很大程度上和数据库的sql语句功能相似,语法也有很多相同的地方

 

    class Demo2
    {
        List<Employ> empArray;
        List<EmpLevel> empLevelArray;
        List<Employ> empResult;

        public Demo2()
        {
            empArray = new List<Employ>();
            empLevelArray = new List<EmpLevel>();
            empResult = new List<Employ>();

            //雇员信息初始化
            empArray.Add(new Employ(1, "梅西", 32, 10));
            empArray.Add(new Employ(2, "内马尔", 27, 8));
            empArray.Add(new Employ(3, "卡瓦尼", 32, 5));
            empArray.Add(new Employ(4, "德布劳内", 32, 6));
            empArray.Add(new Employ(5, "马内", 32, 2));
            empArray.Add(new Employ(6, "卡卡", 32, 9));

            //雇员等级初始化
            empLevelArray.Add(new EmpLevel(1,1,"一级实习",3000));
            empLevelArray.Add(new EmpLevel(2, 2, "二级见习", 5000));
            empLevelArray.Add(new EmpLevel(3, 3, "三级菜鸟", 8000));
            empLevelArray.Add(new EmpLevel(4, 3, "四级新手", 10000));
            empLevelArray.Add(new EmpLevel(5, 4, "五级员工", 30000));
            empLevelArray.Add(new EmpLevel(6, 5, "六级老手", 50000));
        }

        /// <summary>
        /// 一般查询方法
        /// </summary>
        public void Test1()
        {
            foreach (Employ item in empArray)
            {
                if (item.LevelNum > 5)
                    empResult.Add(item);
            }

            foreach (Employ item in empResult)
            {
                Console.WriteLine(item);
            }
        }

        /// <summary>
        /// Linq查询方法
        /// </summary>
        public void Test2()
        {
            var result = from e in empArray
                         where e.LevelNum>6
                         select e.Name;
            foreach (var item in result)
            {
                Console.WriteLine(item);
            }
        }

        static void Main(string[] args)
        {
            Demo2 obj = new Demo2();
            obj.Test2();
        }
    }

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap