栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

流利和查询表达-相对于其他有什么好处吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

流利和查询表达-相对于其他有什么好处吗?

两者都更好:它们满足不同的需求。当您想利用 多个范围变量 时,查询语法就会发挥作用。这在三种情况下发生:

  • 使用let关键字时
  • 当您有多个生成器( from 子句)时
  • 加入时

这是一个示例(来自LINQPad示例):

string[] fullNames = { "Anne Williams", "John Fred Smith", "Sue Green" };var query =  from fullName in fullNames  from name in fullName.Split()  orderby fullName, name  select name + " came from " + fullName;

现在将此与方法语法中的相同内容进行比较:

var query = fullNames  .SelectMany (fName => fName.Split().Select (name => new { name, fName } ))  .OrderBy (x => x.fName)  .ThenBy  (x => x.name)  .Select  (x => x.name + " came from " + x.fName);

另一方面,方法语法可显示查询运算符的全部范围,并且对于简单查询更为简洁。通过混合查询和方法语法,您可以兼得两者。这通常在LINQ to SQL查询中完成:

var query =  from c in db.Customers  let totalSpend = c.Purchases.Sum (p => p.Price)    // Method syntax here  where totalSpend > 1000  from p in c.Purchases  select new { p.Description, totalSpend, c.Address.State };


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/514786.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号