深入理解的五项主要改进牛
民生法规 2021-08-25 01:56 字号: 大 中 小
匿名类型的范围与任何其它变量的范围相同。例如,下面代码块中的cobra实例仅仅在Speed函数块中有效:
private void Speed()
{
var cobra = new { Horsepower = 550, Torque = 570 };
}
如果一个匿名类型被初始化而另一个匿名类型位于范围域中,并且它们的签名相同,第二个类型将自己占用第一个类型的类型。例如,在下面这段代码中,cobra和mustang都是匿名类型,并且可以彼此设定。
private void Speed()
{
var cobra = new { Horsepower = 550, Torque = 570 };
var mustang = new { Horsepower = 300, Torque = 300 };
mustang = cobra; //or you could say cobra = mustang
}
5 .LINQ
在之前的C#版中,开发者应用许多不同的查询语言来访问不同的数据源。例如,要查询一个XML文件,开发者会使用XPath,要查询一个SQL数据库,开发者将使用SQL。在过去这种方法十分有效,并且现在仍然是访问各种数据的主要方法。但是,这种方法具有一些缺点。 一个显著的缺点在于:开发者必须以一种不同的语言,而非他们当前使用的语言(如SQL或XPath)来编写查询代码。另一个缺点是,在执行某些查询语言,如SQL时,开发者必须编写映射代码将查询结果转化为可用的C#业务对象。
C#3.0推出一种称之为语言集成查询(LINQ)的新方法。应用LINQ,开发者可以编写出能够搜索任何IEnumerableT数据源的代码。所以除了应用TSQL访问MS SQL数据库,应用XPath访问XML文件外,他们还可以应用LINQ。
下面的代码(列表C)是一个LINQ查询的例子,它返回所有OrderCount大于10的顾客:
列表C
using System;
using ery;
using neric;
public class SampleClass
{
static void Main()
{
ListCustomer customers = GetCustomers();
//Write our query to retrieve customers who have more than
// 10 orders.
但布伦特油价却正好相反 IEnumerableCustomer queryResult = from customer in customers
where derCount 10
select customer;
}
}
与SQL或XPath不同,LINQ查询用C#,而非第三方语言编写。这样,查询就不会出现类型问题,开发者也就没有必要编写映射代码把查询返回的数据转化成C#对象,而由LINQ API自动处理映射。
基本上,在ORM解决方案中,LINQ对象用途很大。同样,它的范围也非常广泛,有大量MSDM信息描述了它的功能。欲了解更多信息,请访问LINQ主页。
查看本文来源
德州治白癜风哪里最好碧凯保妇康栓贵吗
西安专业治疗白癜风的医院
-
-
斯诺克英锦赛特鲁姆普61戴维斯半决赛将战
斯诺克英锦赛特鲁姆普戴维斯 半决赛将战马奎尔北京时间12月...
2020-07-09 | 民生法规
-
-
八一女排为年轻交学费王之腾金软景起核心作
八一女排为年轻交学费 王之腾:金软景起核心作用发布会现场...
2020-07-03 | 民生法规
-
-
房价普跌局面未现部委表态调控绝不松劲搭配
房价普跌局面未现 部委表态调控绝不松劲新一轮房地产调控政...
2020-05-31 | 民生法规
-
-
建立完善信用建设海南将规范房地产估价行业搭配
建立完善信用建设 海南将规范房地产估价行业记者日前从海南...
2020-05-26 | 民生法规
-
-
区民政局积极探索日间照料中心运营机制创新
区民政局积极探索日间照料中心运营机制创新,助推一流 养老...
2019-12-17 | 民生法规
-
-
唐山春暖花开时远离猩红热
唐山:春暖花开时 远离猩红热( 马硕 报道)春天来了,天气...
2019-07-12 | 民生法规