Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Kereskényi Róbert MSDN Kompetencia Központ Budapesti Műszaki és Gazdaságtudományi Egyetem Automatizálási és Alkalmazott Informatikai.

Hasonló előadás


Az előadások a következő témára: "Kereskényi Róbert MSDN Kompetencia Központ Budapesti Műszaki és Gazdaságtudományi Egyetem Automatizálási és Alkalmazott Informatikai."— Előadás másolata:

1 Kereskényi Róbert MSDN Kompetencia Központ Budapesti Műszaki és Gazdaságtudományi Egyetem Automatizálási és Alkalmazott Informatikai Tanszék LINQ to DataSet

2 2 LINQ Objects XML.NET Language Integrated Query C# 3.0VB 9.0Others… Relational LINQ to Objects LINQ to SQL LINQ to XML LINQ to Entities LINQ to DataSet Objects Relational

3 3 Hol jön a képbe? Adatforrás (MS-SQL 2005, WCF Service, XML) UI / Middle Tier (ASP.NET, Windows Forms, WPF) DataSet LINQ to DataSet ?

4 4 DataSet lekérdezések.NET 2.0  Select  GetChildRows, GetParentRow (DataSet.Tables[…].Rows[…].~)  Find, FindRows, RowFilter (DataSet.Tables[…].DefaultView.~).NET 3.5  LINQ

5 5 DataSet – LINQ lekérdezés DataTable orders = ds.Tables["SalesOrderHeader"]; var query = from o in orders.AsEnumerable() where o.Field ("OnlineOrderFlag") == true select new { SalesOrderID = o.Field ("SalesOrderID"), OrderDate = o.Field ("OrderDate"), SalesOrderNumber = o.Field ("SalesOrderNumber") }; foreach (var onlineOrder in query) { Console.WriteLine("Order ID: {0} Order date: {1:d} Order number: {2}", onlineOrder.SalesOrderID, onlineOrder.OrderDate, onlineOrder.SalesOrderNumber); } DataTable orders = ds.Tables["SalesOrderHeader"]; var query = from o in orders.AsEnumerable() where o.Field ("OnlineOrderFlag") == true select new { SalesOrderID = o.Field ("SalesOrderID"), OrderDate = o.Field ("OrderDate"), SalesOrderNumber = o.Field ("SalesOrderNumber") }; foreach (var onlineOrder in query) { Console.WriteLine("Order ID: {0} Order date: {1:d} Order number: {2}", onlineOrder.SalesOrderID, onlineOrder.OrderDate, onlineOrder.SalesOrderNumber); }

6 6 LINQ – DataSet lekérdezés .AsEnumerable()  DataSet  IEnumerable  DataSet  IEnumerable  DataRow szekvencia a bemenet és a kimenet is  Field, SetField  Generikus, típusos, nullable adatelérés  Query kifejezés / Metódus hívás

7 7 DataSet LINQ lekérdezések  Egy táblás / több táblás  Join, GroupJoin  Halmazműveletek  Distinct, Union, Intersect, Except  Particionálás  Skip, SkipWhile, Take, TakeWhile  Rendezés  OrderBy [descending], Reverse, ThenBy [descending]

8 8 DataSet LINQ lekérdezések  Konverzió  ToArray, ToDictionary, ToList  Elem  ElementAt, First  Aggregáció  Aggregate, Average, Count, LongCount, Max, Min, Sum

9 9 DataSet specifikus kiegészítések  CopyToDataTable  DataRowComparer  AsEnumerable  Field, SetField

10 10 10  Egytáblás lekérdezés  Több táblás lekérdezés  Halmazművelet  Merge

11 11 Pro és kontra  Előnyök  láttuk…  Hátrányok  Adatkötés!!!  Egyszeri leképzés  Nincs vissza irány az adatforrás felé  Adatforrás változások nem reprezentálódnak  MEGOLDÁS  CopyToDataTable

12 12 DataSet jövője  avagy ennyi volt, itt a vége?  NEM  Tovább él:  SqlCacheDependency  XmlSerialization  Xml Integration  DataView  Számított értékek

13 13 Összefoglalás  LINQ megvalósítás DataSet felett  Jól használható, produktív  Összetett lekérdezések is könnyen megfogalmazhatók  Speciális DataSet kiegészítések  DataSet van / volt / lesz

14 14 14

15 15 15

16 16 © 2007 Microsoft Corporation. Minden jog fenntartva. Az előadás csupán tájékoztató jellegű, a Microsoft Magyarország a benne szereplő esetleges hibákért vagy tévedésekért semmilyen felelősséget nem vállal.


Letölteni ppt "Kereskényi Róbert MSDN Kompetencia Központ Budapesti Műszaki és Gazdaságtudományi Egyetem Automatizálási és Alkalmazott Informatikai."

Hasonló előadás


Google Hirdetések