LINQ 语句

基本语法
var result = from item
in container
orderby value ascending/descending
select item;

  1. 获取全部记录
    var allCars = from c in myCars select c;
    (提取指定行记录)
    var allCars = (from c in myCars select c).Take(5);//提取前 5 个数据
    (模糊查询)
    var quest = from qu in mdc.Question
    where qu.Question1.Contains(“数”)
    select qu;//模糊查询
    --------qu.Question1.Contains(“数”)//Linq 的表的哪列的 Contains()的方法
    (Linq 通过对象向数据库添加数据)
    NewsInfo newnf = new NewsInfo();
    newnf.newscontext = nf.newscontext;
    newnf.newsauthor = nf.newsauthor;
    newnf.newstime = DateTime.Now;//得到系统时间
    mdc.NewsInfo.InsertOnSubmit(newnf);//标记添加状态
    mdc.SubmitChanges();//执行添加
  2. 只获取字段名称
    var names = from c in myCars select c.PetName;这里 names 就是隐式类型的变量。
  3. 使用 Enumerable.Distinct()
    var makes = (from c in myCars select c.Make).Distinct();
  4. 即可以在定义的时候调用 Enumberalbe 扩展函数
    var names = from c in myCars select c.PetName;
    foreach (var n in names)
    { Console.WriteLine(“Name: {0}”, n); } 也可以在兼容的数组类型上调用
    var makes = from c in myCars select c.Make;
    Console.WriteLine(“Distinct makes:”);
    foreach (var m in makes.Distinct())
    {
    Console.WriteLine(“Make: {0}”, m);
    }
    var onlyBMWs = from c in myCars
    where c.Make == “BMW” select c;
    var onlyFastBMWs = from c in myCars
    where c.Make == “BMW” && c.Speed >= 100 select c;
  5. 生成新的数据类型(投影)
    var makesColors = from c in myCars select new {c.Make, c.Color};
  6. Reverse()
    var subset = (from c in myCars select c).Reverse();
    foreach (Car c in subset)
    {
    Console.WriteLine(“{0} is going {1} MPH”, c.PetName, c.Speed);
    }
    或者
    var subset = from c in myCars select c;
    foreach (Car c in subset.Reverse())
    {
    Console.WriteLine(c.ToString());
    }
  7. 排序
    默认是 ascending
    var subset = from c in myCars orderby c.PetName select c;
    subset = from c in myCars
    where c.Speed > 55 orderby c.PetName descending select c;
    默认顺序时也可以明确指明
    var subset = from c in myCars
    orderby c.PetName ascending select c; 8. Enumerable.Except()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值