最近开始学习linq.自己也总结一下,方便以后查阅。

Select 同 Sql 中的 select 类似,即输出我们要的东东,感觉在 linq 中更加强大。

Linq 可以对集合如数组、泛型等操作,这里我们对泛型类型进行举例。建一个类如下:

public class Customer
{
public Customer(string firstName, string lastName, string city)
{
FirstName = firstName;
LastName = lastName;
City = city;
}
public Customer()
{}
public string FirstName { get; set; }
public string LastName { get; set; }
public string City { get; set; }
}

1、 select 出对象,cust 是一个Customer 对象。

static void Main(string[] args)
{
List<Customer> customers = new List<Customer>()
{
new Customer("Jack", "Chen", "London"),
new Customer("Sunny","Peng", "Shenzhen"),
new Customer("Tom","Cat","London")
};
//使用IEnumerable<T>作为变量
var result =from cust in customers
where cust.City == "London"
select cust;
foreach (var item in result)
{
Console.WriteLine(item.FirstName+":"+item.City);
}
Console.Read();
}

2、 select 出对象的属性字段

var result =from cust in customerswhere cust.City == "London"
select cust.City

多个属性要用new {}如下:

var result =from cust in customers where cust.City == "London"
select new{cust.City,cust.FirstName};

3、  重命名, city 和 name 是随便起的

var result =from cust in customers where cust.City == "London"
select new{ city=cust.City, name ="姓名"+ cust.FirstName+""+cust.LastName };
foreach (var item in result)
{
Console.WriteLine(item.name+":"+item.city);
}

4、 直接实例化对象

var result =from cust in customers where cust.City == "London"
select new Customer{ City = cust.City, FirstName = cust.FirstName };

5、 selec 中嵌套select

var result =from cust in customers  where cust.City == "London"
select new{ city = cust.City,
name=from cust1 in customers where cust1.City == "London" select cust1.LastName
};

Linq 之 Select 和 where 的用法的更多相关文章

  1. Linq中关键字的作用及用法

    Linq中关键字的作用及用法 1.All:确定序列中的所有元素是否都满足条件.如果源序列中的每个元素都通过指定谓词中的测试,或者序列为空,则为 true:否则为 false. Demo: 此示例使用 ...

  2. Linq之select子句

    在Linq中select子句用来指定查询结果的类型和表现形式.Linq查询要么以select子句结尾,要么以group子句结尾. List<UserBaseInfo> users = ne ...

  3. mysql SELECT FOUND_ROWS()与COUNT(*)用法区别

    在mysql中 FOUND_ROWS()与COUNT(*)都可以统计记录,如果都一样为什么会有两个这样的函数呢,下面我来介绍SELECT FOUND_ROWS()与COUNT(*)用法区别   SEL ...

  4. CASE WHEN 及 SELECT CASE WHEN的用法(转)

    Case具有两种格式.简单Case函数和Case搜索函数. 简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END   ...

  5. CASE WHEN 及 SELECT CASE WHEN的用法

    CASE WHEN 及 SELECT CASE WHEN的用法 Case具有两种格式.简单Case函数和Case搜索函数. 简单Case函数 CASE sex WHEN '1' THEN '男' WH ...

  6. ORACLE CASE WHEN 及 SELECT CASE WHEN的用法

    Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END ...

  7. Mybatis 系列8-结合源码解析select、resultMap的用法

    [Mybatis 系列10-结合源码解析mybatis 执行流程] [Mybatis 系列9-强大的动态sql 语句] [Mybatis 系列8-结合源码解析select.resultMap的用法] ...

  8. linq list select用法注意事项

    下面是我自己做的一个例子 List<CR_CustomerOrder> OrdList = new List<CR_CustomerOrder>(); var b = OrdL ...

  9. select into from 和 insert into select 的区别和用法及 SQL SELECT INTO 中Undeclared variable错误解决办法

    今天试了一下数据表中的数据备份到另一个空的数据表,然后使用了SQL SELECT INTO语句,然后提示Undeclared variable......错误,现在在这里做下总结并给出解决办法. 应用 ...

随机推荐

  1. selenium+python自动化笔记之一

    一.webdriver的API与定位元素 元素定位核心部分 元素名称 webdriver API 说明 id find_element_by_id() id定位 name find_element_b ...

  2. MySQL 聚簇索引和非聚簇索引的认识

    聚簇索引是对磁盘上实际数据重新组织以按指定的一个或多个列的值排序的算法.特点是存储数据的顺序和索引顺序一致.一般情况下主键会默认创建聚簇索引,且一张表只允许存在一个聚簇索引. 在<数据库原理&g ...

  3. 使用POI读写Word doc文件

    使用POI读写word doc文件 目录 1     读word doc文件 1.1     通过WordExtractor读文件 1.2     通过HWPFDocument读文件 2     写w ...

  4. File类_常见的方法(获取系统根目录与指定目录的容量)

    获取系统根目录 import java.io.File; public class File_ListRoots { public static void main(String[] args) { ...

  5. openssl windows 生成公钥与私钥

    链接: https://pan.baidu.com/s/1qn-qeFxovor-vcAWFl8jIw 提取码: zy5v 一,下载安装windows平台openssl密钥生成工具,执行安装目录bin ...

  6. IDEA里面添加lombok插件,编写简略风格Java代码(转)

    文章转自http://blog.csdn.net/hinstenyhisoka/article/details/50468271 在 java平台上,lombok 提供了简单的注解的形式来帮助我们消除 ...

  7. Hibernate validator使用和自定义validator及整合Spring MVC

    http://blog.csdn.net/lwphk/article/details/43983669 Hibernate validator使用 导入validation-api-xxx.jar 以 ...

  8. docker 仓库搭建

    阿里云服务器: 127.0.0.1(客户端) 127.0.0.2(私有服务器) 127.0.0.2作为私有仓库使用 1.下载镜像 [root@insure ~]# docker pull regist ...

  9. linux问题总结

    编写后台进程的管理脚本,使用service deamon-name stop的时候,出现如下提示:/sbin/service: line 66: 23299 Terminated env -i LAN ...

  10. Objective-C 类簇深入理解

    类簇(class cluster),是一种基于抽象工厂的设计模式,广泛运用于系统的Foundation框架.顾名思义,即一坨类,这里指的是继承自同一父类的一组私有子类.这种实现既可以简化公共接口,又保 ...