Lambda表达式和Lambda表达式树举例:
//选择数组中第偶数个元素的数值平方并输出排序后的结果
nums.Select(n => Int32.Parse(n))
.Where(n => n % 2 == 0)
.Select(n => n * n)
.OrderBy(n => n)
.ToList()
.ForEach(n => Console.WriteLine(n));
n => n % 2 == 0,n => Console.WriteLine(n)等都是Lambda表达式。
Linq(Linq To Entity)举例:
{
using (var TE = new TestEntities())
{
var lstLogin = (from user in TE.Users where user.Enabled = 1
select new Login
{
PW = user.Pass,
ID = user.Id
}).ToList();
return lstLogin;
}
}
三、历史性的三大集成框架:
WPF (Windows Presentation Foundation)
WPF是微软新一代图形系统,为用户界面、2D/3D 图形、文档、视频、动画、三维等媒体提供了统一的描述和操作方法。基于DirectX 9/10技术的WPF不仅带来了前所未有的3D界面,而且其图形向量渲染引擎也大大改进了传统的2D界面,比如Vista中的半透明效果的窗体等都得益于WPF。 程序员在WPF的帮助下,要开发出媲美Mac程序的酷炫界面已不再是遥不可及的奢望。 WPF相对于Windows客户端的开发来说,向前跨出了巨大的一步,它提供了超丰富的.NET UI 框架,集成了矢量图形,丰富的流动文字支持flow text support,3D视觉效果和强大无比的控件模型框架。
对于开发人员和设计人员,WPF引擎统一了开发人员和设计人员体验文档、媒体和 UI 的方式他们从此只需学习一个模式。对于 .NET 开发人员,其框架是熟悉的,并且它最终将减少提供非常好的用户体验和通信逻辑所需的代码行数。对于设计人员,WPF 提供的平台可消除内容、媒体和应用程序之间的边界。更重要的是,WPF可以使开发人员和设计人员像Web开发一样同步紧密地合作,也将大大提高C/S项目开发效率。
WCF (Windows Communication Foundation)
是Microsoft为构建面向服务的应用提供的分布式通信编程框架,.NET Framework 3.5的重要组成部分。使用该框架,开发人员可以构建跨平台、安全、可靠和支持事务处理的企业级互联应用解决方案。
从功能的角度来看,WCF完全可以看作是ASMX,.Net Remoting,Enterprise Service,WSE,MSMQ等技术的并集。利用WCF,就可以解决包括安全、可信赖、互操作、跨平台通信等等需求。开发者再不用去分别了解.Net Remoting,ASMX等等各种技术了,同时,WCF充分地考虑了与旧有系统的兼容性。安装WCF并不会影响原有的.Net Remoting等技术方案。
ADO.NET Entity Framework
微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案。
ADO.NET Entity Framework 以 Entity Data Model (EDM) 为主,将数据逻辑层切分为三块,分别为 Conceptual Schema, Mapping Schema 与 Storage Schema 三层,其上还有 Entity Client,Object Context 以及 LINQ 可以使用。Entity Framework在 Visual Studio 2008 和.Net 3.5 CLR中都有充分的支持,也非常容易上手。使用Entity Framework,可以减少70%-90%的数据访问层代码,极大地提高.Net程序的开发效率、维护效率及程序健壮性。