这里介绍LINQ to SQL语句,目的让大家从语句的角度了解LINQ,LINQ包括LINQ to Objects、LINQ to DataSets、LINQ to SQL、LINQ to Entities、LINQ to XML。
在向咱们具体介绍LINQ to SQL句子之前,首先让咱们了解下Select操作方式,分别为指定嵌套类型方式、LocalMethodCall方式、Distinct方式。
这篇开端咱们持续说LINQ to SQL句子,意图让咱们从句子的视点了解LINQ,LINQ包括LINQ to Objects、LINQ to DataSets、LINQ to SQL、LINQ to Entities、LINQ to XML,可是相对来说LINQ to SQL在咱们程序中运用最多,究竟一切的数据都要在数据库运转着各种操作。所以先来学习LINQ to SQL句子,其它的都差不多了,那么就从Select说起吧,这个在编写程序中也最为常用。本篇具体阐明一下Select操作方式,分别为指定嵌套类型方式、LocalMethodCall方式、Distinct方式。
1.嵌套类型方式:
阐明:回来的目标会集的每个目标DiscountedProducts特点中,又包括一个调集。也便是每个目标也是一个调集类。
- varq=
- fromoindb.Orders
- selectnew{
- o.OrderID,
- DiscountedProducts=
- fromodino.OrderDetails
- whereod.Discount>0.0
- selectod,
- FreeShippingDiscount=o.Freight
- };
2.LocalMethodCall方式:
这个比如InternationalPhone调用本地办法PhoneNumberConverter
- varq=fromcindb.Customers
- wherec.Country=="UK"||c.Country=="USA"
- selectnew
- {
- c.CustomerID,
- c.CompanyName,
- Phone=c.Phone,
- InternationalPhone=
- PhoneNumberConverter(c.Country,c.Phone)
- };
PhoneNumberConverter办法如下:
- publicstringPhoneNumberConverter(stringCountry,stringPhone)
- {
- PhonePhone=Phone.Replace("","").Replace(")",")-");
- switch(Country)
- {
- case"USA":
- return"1-"+Phone;
- case"UK":
- return"44-"+Phone;
- default:
- returnPhone;
- }
- }
下面也是运用了这个办法
- XDocumentdoc=newXDocument(
- newXElement("Customers",fromcindb.Customers
- wherec.Country=="UK"||c.Country=="USA"
- select(newXElement("Customer",
- newXAttribute("CustomerID",c.CustomerID),
- newXAttribute("CompanyName",c.CompanyName),
- newXAttribute("InterationalPhone",
- PhoneNumberConverter(c.Country,c.Phone))
- }
- }
- }
- };
3.Distinct方式:
阐明:挑选字段中不相同的值。用于查询不重复的成果集。生成SQL句子为:SELECT DISTINCT [City] FROM [Customers]
- varq=(
- fromcindb.Customers
- selectc.City)
- .Distinct();
句子描绘:查询顾客掩盖的国家。
【修改引荐】
- LINQ to SQL Table浅谈
- Linq句子问题的解决办法
- Ling to sql更新实体概述
- Linq实体承继简略描绘
- Linq Library概述
知优网 » LINQ to SQL句子浅析(LINQ to SQL)