Megosztás a következőn keresztül:


ADO.NET architektúra

Az adatfeldolgozás hagyományosan elsősorban egy kapcsolatalapú, kétrétegű modellre támaszkodik. Mivel az adatfeldolgozás egyre inkább többrétegű architektúrákat használ, a programozók leválasztott megközelítésre váltanak, hogy jobb skálázhatóságot biztosítsanak az alkalmazásaik számára.

ADO.NET összetevők

Az adatok elérésére és manipulálására szolgáló ADO.NET két fő összetevője a .NET-keretrendszer adatszolgáltatók és a DataSet.

.NET-keretrendszer adatszolgáltatók

A .NET-keretrendszer adatszolgáltatók olyan összetevők, amelyeket kifejezetten az adatok kezelésére és az adatok gyors, csak továbbítható, írásvédett elérésére terveztek. Az Connection objektum kapcsolatot biztosít egy adatforrással. Az Command objektum lehetővé teszi az adatbázis-parancsok hozzáférését az adatok visszaadásához, az adatok módosításához, a tárolt eljárások futtatásához, valamint a paraméteradatok elküldéséhez vagy lekéréséhez. Ez DataReader nagy teljesítményű adatfolyamot biztosít az adatforrásból. Végül a DataAdapter híd az objektum és az DataSet adatforrás között. Command Az DataAdapter objektumok sql-parancsokat hajtanak végre az adatforrásban az adatok betöltéséhezDataSet, és egyeztetik a DataSet háttérbeli adatokon végrehajtott módosításokat az adatforrással. További információ: .NET-keretrendszer adatszolgáltatók, valamint az adatok beolvasása és módosítása ADO.NET.

Az adatkészlet

A ADO.NET DataSet kifejezetten az adatforrástól független adathozzáféréshez lett kialakítva. Ennek eredményeképpen több és eltérő adatforrással is használható, XML-adatokkal használható, vagy az alkalmazás helyi adatainak kezelésére használható. A DataSet gyűjtemény egy vagy több DataTable objektumból áll, amelyek adatsorokból és oszlopokból, valamint elsődleges kulcsból, idegen kulcsból, kényszerből és relációs adatokból állnak.DataTable További információ: DataSets, DataTables és DataViews.

Az alábbi ábra egy .NET-keretrendszer adatszolgáltató és egy DataSet.

ADO.Net graphic
ADO.NET architektúra

DataReader vagy DataSet kiválasztása

Amikor eldönti, hogy az alkalmazásnak használnia kell-e ( DataReader lásd : Adatok lekérése DataReaderrel) vagy ( DataSet lásd : DataSets, DataTables és DataViews), vegye figyelembe az alkalmazás által igényelt funkciók típusát. Az a DataSet használatával tegye a következőket:

  • Az adatok helyi gyorsítótárazása az alkalmazásban, hogy manipulálhassa őket. Ha csak egy lekérdezés eredményeit kell elolvasnia, a DataReader jobb választás.

  • Távoli adatok rétegek között vagy XML-webszolgáltatásból.

  • Dinamikusan kezelheti az adatokat, például a Windows Forms-vezérlőkhöz való kötést, illetve több forrásból származó adatok kombinálását és összekapcsolását.

  • Átfogó adatfeldolgozást végezhet az adatokon anélkül, hogy nyílt kapcsolatot kellene létesítenie az adatforrással, ami felszabadítja a kapcsolatot más ügyfelek számára.

Ha nincs szüksége a szolgáltatás által DataSetbiztosított funkciókra, javíthatja az alkalmazás teljesítményét azáltal, hogy az DataReader adatokat csak előre, írásvédett módon adja vissza. Bár a DataAdapter használatával DataReader kitöltheti egy DataSet adathalmaz tartalmát (lásd : Adathalmaz feltöltése egy DataAdapterből), a használatával növelheti a DataReaderteljesítményt, mivel a rendszer menti a felhasznált memóriát DataSet, és elkerüli a tartalom létrehozásához és kitöltéséhez DataSetszükséges feldolgozást.

LINQ–DataSet

A LINQ to DataSet lekérdezési képességeket és fordítási idő típusú ellenőrzést biztosít az adathalmaz-objektumban gyorsítótárazott adatokon. Lehetővé teszi lekérdezések írását a .NET-keretrendszer fejlesztési nyelv egyikén, például c# vagy Visual Basic nyelven. További információ: LINQ to DataSet.

LINQ to SQL

A LINQ to SQL támogatja a relációs adatbázis adatstruktúráihoz leképezett objektummodellek lekérdezéseit köztes fogalmi modell használata nélkül. Minden táblát egy külön osztály jelöl, amely szorosan összekapcsolja az objektummodellt a relációs adatbázis sémával. A LINQ to SQL lefordítja az objektummodell nyelvvel integrált lekérdezéseit Transact-SQL-nek, és elküldi őket az adatbázisnak végrehajtás céljából. Amikor az adatbázis visszaadja az eredményeket, a LINQ az SQL-nek visszaadja az eredményeket objektumokká. További információ: LINQ–SQL.

ADO.NET Entity Framework

A ADO.NET Entity Framework úgy lett kialakítva, hogy lehetővé tegye a fejlesztők számára az adatelérési alkalmazások létrehozását úgy, hogy a relációs tárolósémán való közvetlen programozás helyett egy elméleti alkalmazásmodellen keresztül programozással hozzanak létre adatelérési alkalmazásokat. A cél az adatorientált alkalmazásokhoz szükséges kód és karbantartás mennyiségének csökkentése. További információ: ADO.NET Entity Framework.

WCF Data Services

A WCF Data Services az adatszolgáltatások webes vagy intranetes üzembe helyezésére szolgál. Az adatok entitásokként és kapcsolatokként épülnek fel az entitás adatmodell specifikációinak megfelelően. Az ezen a modellen üzembe helyezett adatok szabványos HTTP-protokoll alapján kezelhetők. További információ: WCF Data Services 4.5.

XML és ADO.NET

ADO.NET az XML erejét kihasználva leválasztott hozzáférést biztosít az adatokhoz. ADO.NET a .NET-keretrendszer XML-osztályaival együtt tervezték; mindkettő egyetlen architektúra összetevői.

ADO.NET és a .NET-keretrendszer XML-osztályai az objektumban konvergálnakDataSet. Az DataSet adatok feltölthetők XML-forrásból származó adatokkal, legyen szó fájlról vagy XML-adatfolyamról. A DataSet world-Wide Web Consortium (W3C) kompatibilis XML-fájlként írható, amely a sémát XML-sémadefiníciós nyelvként (XSD) tartalmazza, függetlenül attól, hogy a rendszer milyen forrást tartalmaz az adatokban DataSet. Az XML natív szerializálási formátuma DataSet miatt kiváló eszköz az adatok rétegek közötti áthelyezéséhez, így optimális választás az DataSet adatok és sémakörnyezet xml-webszolgáltatásba való áthelyezéséhez és onnan való áthelyezéséhez. További információ: XML-dokumentumok és adatok.

Lásd még