LinQ综合应用实例
直接上代码,内容很浅显易懂,在这里就不做更多的解释,解释见代码注释。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Threading.Tasks; public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string[] names = { "Wang", "Biao", "WangBiao", "Kingtiger" };
var q1 = names.Where(a => a.StartsWith("W"));//直接查询
var q2 = from a in names
where a.StartsWith("W")
select a;//linq查询
var q3 = from a in names
where a.StartsWith("W")
orderby a descending
select a;//linq查询,包括排序,倒序要加上descending
var q4 = names.OrderBy(a => a).Where(a=>a.StartsWith("W"));//直接排序
var q5 = names.OrderByDescending(a => a).Where(a=>a.StartsWith("W"));//直接倒序排序 var q6 = from a in names
select new
{
HI = a + ",您好!"
};//查询后重构输出 var q7 = names.Select(a => new { HI = a + ",您好!" });//直接查询构造输出 List<Person> persons = new List<Person>();
persons.Add(new Person() { ID="0001",Name="Kingtiger" });
persons.Add(new Person() { ID = "0002", Name = "Wang" });
persons.Add(new Person() { ID = "0001", Name = "Biao" });
persons.Add(new Person() { ID = "0004", Name = "WangBiao" }); var q8 = from p in persons
orderby p.ID, p.Name
select p;//多级排序,先排序ID,然后再排序Name
var q9 = persons.OrderBy(a => a.ID).ThenBy(a => a.Name).Select(a => a);//直接两个排序 var qt = from p in persons
where p.Name.Contains("W") || p.Name.Contains("Biao")
select p;//第一次查询进行过滤
var q10 = from p in qt
orderby p.Name descending
select p.Name;//对一次查询结果进行第二次处理 var q11 = from p in persons
group p by p.ID into cg
select new {
GroupID = cg.Key,
GroupCount= cg.Count()
};//分组查询,将结果提取出来 List<Order> orders = new List<Order>();
orders.Add(new Order() { UserID="0002",OrderID="001", OrderName="苹果" });
orders.Add(new Order() { UserID = "0002", OrderID = "003", OrderName = "香蕉" });
orders.Add(new Order() { UserID = "0004", OrderID = "002", OrderName = "荔枝" }); var q12 = from p in persons
join o in orders on p.ID equals o.UserID
select new
{
PName = p.Name,
POrderName = o.OrderName
};
foreach (var p in q12)
{
Response.Write(p+"<br/>");
}
}
} public class Person
{
public string ID { set; get; }
public string Name { set; get; }
} public class Order
{
public string OrderID { set; get; }
public string OrderName { set; get; }
public string UserID { set; get; }
}
LinQ综合应用实例的更多相关文章
- 使用LINQ查询数据实例和理解
使用LINQ查询数据实例和理解 var contacts= from customer in db.Customers where customer.Name.StartsWith("A&q ...
- 华为OSPF与ACL综合应用实例讲解
OSPF与ACL综合应用实例讲解 项目案例要求: 1.企业内网运行OSPF路由协议,区域规划如图所示:2.财务和研发所在的区域不受其他区域链路不稳定性影响:3.R1.R2.R3只允许被IT登录管理:4 ...
- openresty 学习笔记小结:综合应用实例
openresty 学习笔记小结:综合应用实例 这个综合实验实现的功能其实很简单,用户访问一个页面,显示一个默认页面.输入参数(post或者get都可以),如果参数在数据库查询得到并满足一定条件,根据 ...
- Directx 3D编程实例:多个3D球的综合Directx实例
最近朋友建议我写一些关于微软云技术的博客留给学校下一届的学生们看,怕下一届的MSTC断档.于是我也觉的有这个必要.写了几篇博客之后,我觉得也有必要把这一年的学习内容放在博客做个纪念,就这样写了本篇博客 ...
- [C#]Linq To Xml 实例操作- 转
http://blog.sina.com.cn/s/blog_6c762bb301010oi5.html http://blog.xuite.net/cppbuilder/blog/9940157 在 ...
- 【C#】MVC+EF+LINQ 综合小项目
第一,创建数据库 create table category(id int primary key,name nvarchar(20)) create table news(id int primar ...
- Linq 高级应用实例
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Tex ...
- Linq To Csv 实例简说
http://www.codeproject.com/Articles/25133/LINQ-to-CSV-library 详细源代码在这里 https://github.com/mperdeck/L ...
- --@angularJS--较复杂的指令嵌套demo——综合小实例:登陆界面
1.index.html: <!DOCTYPE HTML><html ng-app="app"><head> <title>c ...
随机推荐
- Unity3D 利用NGUI2.6.3做技能冷却的CD效果
转自http://blog.csdn.net/qqmcy/article/details/9469021 NGUI非常强大我们今天来学习一下,如何利用NGUI做技能冷却的CD效果.先导入NGUI的插件 ...
- java集合类(五)About Map
接上篇“java集合类(四)About Set” 这次学完Map之后,就剩队列的知识,之后有关java集合类的学习就将告一段落,之后可能会有java连接数据库,I/O,多线程,网络编程或Android ...
- netbeans设置字体
选择 monospaced 字体 摘抄自:http://blog.sina.com.cn/s/blog_4b6047bc01000boz.html 今天看该文档时,突然意识到通过修改JRE的字体配置文 ...
- oracle 删除用户,表空间;循环删除表
select * from dba_tablespaces 说明:查看所有表空间 ----------------------------------------------------------- ...
- c++ freelockquque
http://www.boost.org/doc/libs/1_56_0/doc/html/boost/lockfree/queue.html Class template queue boost:: ...
- Matlab计算两集合间的海明距离
一.问题描述 B1[1 2 3 4 5 6 7 8 9] B2[12 13 14 21 31 41 51 1 1 81 1 1] 两个十进制矩阵,行数不一样,分别是n1和n2,列数必须一致,为nwo ...
- 转载一个不错的Scrapy学习博客笔记
背景: 最近在学习网络爬虫Scrapy,官网是 http://scrapy.org 官方描述:Scrapy is a fast high-level screen scraping and web c ...
- Linq to EF 与Linq to Object 使用心得
大家都知道Linq既可以用来查询数据库对象(我这里指的是Entity FrameWork里的Model对象),也可以用来查询内存中的IEnumerable对象. 两者单独查询时都不会出现什么问题,不过 ...
- CentOS中实现Nginx负载均衡和反向代理
一.安装必要软件 负载均衡服务器:IP设置为192.168.1.10 Web服务器1:安装Apache或者Nginx,IP设置为192.168.1.11: Web服务器2:安装Apache或者Ngin ...
- [转载]Spring Annotation Based Configuration
Annotation injection is performed before XML injection, thus the latter configuration will override ...