新聞中心
在向大家詳細(xì)介紹使用LINQ進(jìn)行數(shù)據(jù)轉(zhuǎn)換之前,首先讓大家了解下使用LINQ查詢,然后全面介紹使用LINQ進(jìn)行數(shù)據(jù)轉(zhuǎn)換。

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),遷安企業(yè)網(wǎng)站建設(shè),遷安品牌網(wǎng)站建設(shè),網(wǎng)站定制,遷安網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,遷安網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
使用LINQ進(jìn)行數(shù)據(jù)轉(zhuǎn)換
語(yǔ)言集成查詢 (LINQ) 不僅可用于檢索數(shù)據(jù),而是還是一個(gè)功能強(qiáng)大的數(shù)據(jù)轉(zhuǎn)換工具。通過(guò)使用LINQ查詢,您可以將源序列用作輸入,并采用多種方式修改它以創(chuàng)建新輸出序列。您可以通過(guò)排序和分組來(lái)修改序列本身,而不必修改元素本身。但是,LINQ 查詢最強(qiáng)大的功能可能在于它能夠創(chuàng)建新類(lèi)型。這一功能在 select 子句中實(shí)現(xiàn)。例如,可以執(zhí)行下列任務(wù):
◆將多個(gè)輸入序列合并到具有新類(lèi)型的單個(gè)輸出序列中。
◆創(chuàng)建其元素只包含源序列中的各個(gè)元素的一個(gè)或幾個(gè)屬性的輸出序列。
◆創(chuàng)建其元素包含對(duì)源數(shù)據(jù)執(zhí)行的操作結(jié)果的輸出序列。
◆創(chuàng)建不同格式的輸出序列。例如,您可以將 SQL 行或文本文件的數(shù)據(jù)轉(zhuǎn)換為 XML。
這只是幾個(gè)示例。當(dāng)然,可以采用多種方式將這些轉(zhuǎn)換組合在同一查詢中。另外,一個(gè)查詢的輸出序列可用作新查詢的輸入序列。
將多個(gè)輸入聯(lián)接到一個(gè)輸出序列
可以使用LINQ查詢來(lái)創(chuàng)建包含多個(gè)輸入序列的元素的輸出序列。下面的示例演示如何組合兩個(gè)內(nèi)存中的數(shù)據(jù)結(jié)構(gòu),但組合來(lái)自 XML 或 SQL 或數(shù)據(jù)集源的數(shù)據(jù)時(shí)可應(yīng)用相同的原則。假定下面兩種類(lèi)類(lèi)型:
- class Student
- {
- public string First { get; set; }
- public string Last {get; set;}
- public int ID { get; set; }
- public string Street { get; set; }
- public string City { get; set; }
- public List
Scores; - }
- class Teacher
- {
- public string First { get; set; }
- public string Last { get; set; }
- public int ID { get; set; }
- public string City { get; set; }
- }
下面的示例演示該查詢:
- class DataTransformations
- {
- static void Main()
- {
- // Create the first data source.
- List
students = new List () - {
- new Student {First="Svetlana",
- Last="Omelchenko",
- ID=111,
- Street="123 Main Street",
- City="Seattle",
- Scores= new List
{97, 92, 81, 60}}, - new Student {First="Claire",
- Last="O’Donnell",
- ID=112,
- Street="124 Main Street",
- City="Redmond",
- Scores= new List
{75, 84, 91, 39}}, - new Student {First="Sven",
- Last="Mortensen",
- ID=113,
- Street="125 Main Street",
- City="Lake City",
- Scores= new List
{88, 94, 65, 91}}, - };
- // Create the second data source.
- List
teachers = new List () - {
- new Teacher {First="Ann", Last="Beebe", ID=945, City = "Seattle"},
- new Teacher {First="Alex", Last="Robinson", ID=956, City = "Redmond"},
- new Teacher {First="Michiyo", Last="Sato", ID=972, City = "Tacoma"}
- };
- // Create the query.
- var peopleInSeattle = (from student in students
- where student.City == "Seattle"
- select student.Last)
- .Concat(from teacher in teachers
- where teacher.City == "Seattle"
- select teacher.Last);
- Console.WriteLine("The following students and teachers live in Seattle:");
- // Execute the query.
- foreach (var person in peopleInSeattle)
- {
- Console.WriteLine(person);
- }
- Console.WriteLine("Press any key to exit.");
- Console.ReadKey();
- }
- }
以上介紹使用LINQ進(jìn)行數(shù)據(jù)轉(zhuǎn)換
當(dāng)前名稱(chēng):使用LINQ進(jìn)行數(shù)據(jù)轉(zhuǎn)換剖析
本文網(wǎng)址:http://www.dlmjj.cn/article/djdeosi.html


咨詢
建站咨詢
