定义一个类:
class Student
{
public string Name { get; set; }
public string Sex { get; set; }
public string StuID { get; set; }
public string School { get; set; }
public int Year { get; set; }
}
//直接贴代码 懒得说废话
class Program
{
static void Main(string[] args)
{
List<Student> students = new List<Student>()
{
new Student(){Name="小一",Sex="男",StuID="001",School="中大",Year=10},
new Student(){Name="大二",Sex="女",StuID="002",School="华工",Year=11},
new Student(){Name="张三",Sex="男",StuID="003",School="广外",Year=12},
new Student(){Name="李四",Sex="女",StuID="004",School="广工",Year=13}
};
//1.匿名方法 选出数组里面的名字
//var p = from c in students select c.Name;
//Lamada表达式,选出数组里面的名字
//var result = students.Select(p => p.Name);
//2.匿名方法:选出多个字段Name,School,Year
/* var p = from c in students
select new
{
c.Name,
c.School,
//nianling不用定义,类似sql语句中字段重命名(A as B)
//错误写法c.Year=c.Year+10
nianling=c.Year+10//在这里可以进行简单的操作
};*/
//Lamada表达式:选出多个字段Name,School,Year
var result = students.Select(p => new { p.Name, p.School, p.Year });
foreach (var item in result)
{
Console.WriteLine(item.Name+" ---- "+item.School+"------"+item.Year);
}
Console.ReadKey();
}
}
分享到:
相关推荐
分别对LINQ,LAMBDA表达式,匿名方法做了一下介绍和用法简介,可以作为入门的预备知识来看
在实际项目中,Linq和扩展方法的组合使用能够极大地简化代码,提高可读性和维护性。通过学习和熟练掌握这些概念,开发者可以更高效地处理各种数据操作任务。在提供的`Linq及扩展方法.sln`解决方案中,可能包含了示例...
总结起来,将`Expression<Func<T>>`转换为`Expression, object>>`是.NET开发中的一种常见技巧,主要用于处理匿名类型、灵活性更高的查询以及与其他接受`object`类型参数的方法的交互。通过理解并熟练运用`Expression...
3. **数据迭代**:Go-linq可能会通过`range`关键字来遍历数据源,同时提供高级的过滤、映射和聚合功能。这些操作会在内部处理数据迭代,对开发者透明。 4. **内存效率**:由于Go的内存管理机制,go-linq可能会使用...
实现linq多个查询条件连接功能(支持linq to sql 和linq to entity)。 按多个指定属性排序功能。 不同参数的lamdba表达式条件间的转换功能。
Lambda表达式是LINQ的基础,它是一种匿名函数的表示形式,可以被用作参数传递给方法。在.NET 2.0中,我们可以通过使用lambda表达式来定义这些查询操作的条件或转换规则。Lambda表达式的基本格式为`(参数列表) => ...
LINQ允许开发者使用熟悉的语言结构(如where、select和from)对各种数据类型进行查询,包括集合、数据库和XML文档。它的优点在于提高了代码的可读性和可维护性,减少了错误的可能性。 **js-linq的实现** 在“js封装...
1. **Enumerable类和Queryable类**:LINQ的方法语法基于两个关键接口——`System.Linq.Enumerable`和`System.Linq.Queryable`。前者用于非数据库源,后者用于数据库源。这两个接口定义了一系列的扩展方法,如`Select...
`语句,以便访问LINQ的相关类型和方法。 3. 开始使用LINQ:现在你可以开始编写使用LINQ查询的代码,例如,对集合进行筛选、排序、分组等操作。 值得注意的是,虽然`System.Linq.dll`让.NET 2.0具备了部分LINQ功能...
在实际开发中,有时我们需要了解LINQ查询是如何转换为SQL语句的,以便于调试和优化性能。以下将详细介绍几种查看LINQ生成SQL语句的方法。 1. **Debug.WriteLine()** 在使用LINQ查询时,可以利用`Debug.WriteLine()...
这里,`Where`和`OrderByDescending`都是 LINQ 的扩展方法,它们接受匿名方法作为参数来定义过滤和排序条件。`Where`使用匿名方法`(x => x % 2 == 0)`筛选出偶数,`OrderByDescending`则用`(x => x)`对结果进行降序...
书中首先会介绍LINQ的基本概念,包括查询表达式语法、查询操作符和匿名类型的使用。通过学习,读者将理解如何利用LINQ简化数据查询,提升代码可读性和维护性。例如,LINQ的查询表达式语法与SQL语句类似,但更接近于...
3. **查询与更新**:LInq To Sql提供了类似LInq To Xml的查询语法,可以方便地对数据库进行查询、插入、更新和删除操作。例如,`var result = from customer in db.Customers where customer.City == "New York" ...
### LINQ多个Sum同时执行的方法 在.NET框架中,LINQ(Language Integrated Query)是一种用于处理数据的强大工具,它能够简化对数据集的操作,并且提高了代码的可读性和可维护性。当我们需要从数据集中计算多个聚合...
这部分详细介绍了各种LINQ查询运算符的功能和使用方法: - **过滤(Filtering)**:如`Where`、`Any`、`All`等用于过滤数据集的操作。 - **数据转换(Projecting)**:如`Select`、`SelectMany`等用于转换数据结构的...
Webcast教程可能还会涵盖其他的C# 3.0特性,比如匿名类型、自动属性、对象和集合初始化器、迭代器方法以及匿名方法的替代——`Action`和`Func`委托。这些特性都极大地增强了C#的可读性和简洁性,提高了开发效率。 ...
linq学习教程,NET技术_LINQ中文教程
本书采取以实践为主、以理论为辅的方法,首先对C#新改进的一些语法做了详细的剖析,让读者领会C#语法的新特点,为后面的学习打下基础,然后对LINQ各个子句和组件进行了实例讲解,通过一个个生动的示例,带领读者...
本书部分介绍了LINQ技术及C#和VB为此提供的新语言特性,第二、三、四部分详细介绍了LINQ的主要功能LINQ to Objects、LINQ to SQL、LINQ to XML,第五部分研究了LINQ的可扩展性、在应用程序中使用各种LINQ功能的方法...