Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Zpracování dat tradičně spoléhalo především na dvouvrstvou model založený na připojení. Vzhledem k tomu, že zpracování dat stále častěji využívá vícevrstvé architektury, programátoři přecházejí na odpojený přístup, aby zajistili lepší škálovatelnost svých aplikací.
komponenty ADO.NET
Dvě hlavní komponenty ADO.NET pro přístup k datům a jejich manipulaci jsou poskytovatelé dat rozhraní .NET Framework a DataSet.
Zprostředkovatelé dat rozhraní .NET Framework
Zprostředkovatelé dat rozhraní .NET Framework jsou komponenty, které byly explicitně navrženy pro manipulaci s daty a rychlý přístup jen pro čtení k datům. Objekt Connection poskytuje připojení ke zdroji dat. Objekt Command umožňuje přístup k databázovým příkazům k vrácení dat, úpravě dat, spouštění uložených procedur a odesílání nebo načítání informací o parametrech. Poskytuje DataReader vysoce výkonný datový proud ze zdroje dat.
DataAdapter Nakonec poskytuje most mezi objektem DataSet a zdrojem dat. Použití DataAdapterCommand objektů umožňuje spouštět SQL příkazy ve zdroji dat k načtení DataSet s daty a k odsouhlasení změn provedených ve DataSet zpět ke zdroji dat. Další informace najdete v tématu Zprostředkovatelé dat rozhraní .NET Framework a načítání a úpravy dat v ADO.NET.
Datová sada
ADO.NET DataSet je explicitně navržená pro přístup k datům nezávisle na jakémkoli zdroji dat. V důsledku toho se dá použít s několika různými zdroji dat, používat s daty XML nebo spravovat data místní pro aplikaci. Obsahuje DataSet kolekci jednoho nebo více DataTable objektů, které se skládají z řádků a sloupců dat, a také primárního klíče, cizího klíče, omezení a relačních informací o datech v DataTable objektech. Další informace naleznete v tématu Datové sady, Datové tabulky a DataViews.
Následující diagram znázorňuje vztah mezi zprostředkovatelem dat rozhraní .NET Framework a rozhraním DataSet.
Architektura ADO.NET
Volba DataReader nebo datové sady
Když se rozhodnete, jestli má vaše aplikace použít DataReader (viz Načítání dat pomocí třídy DataReader) nebo DataSet (viz Datové sady, Datové tabulky a DataViews), zvažte typ funkcí, které vaše aplikace vyžaduje. Použijte DataSet k provedení následujících úkonů:
Data můžete ukládat do mezipaměti místně ve vaší aplikaci, abyste s nimi mohli manipulovat. Pokud potřebujete jen přečíst výsledky dotazu, je lepší volbou
DataReader.Vzdálená data mezi jednotlivými vrstvami nebo z XML webové služby.
Interakce s daty dynamicky, jako je vazba na ovládací prvek Windows Forms nebo kombinování a korelace dat z více zdrojů
Proveďte rozsáhlé zpracování dat bez nutnosti otevřeného připojení ke zdroji dat, které uvolní připojení, aby ho mohli používat jiní klienti.
Pokud funkce poskytované funkcí DataSetnevyžadujete, můžete zlepšit výkon aplikace pomocí funkce DataReader , která vrací data jen pro předávání, jen pro čtení.
DataAdapter Ačkoli použití DataReader vyplňuje obsah objektu DataSet (viz Naplnění datové sady z objektu DataAdapter), použitím DataReader můžete zvýšit výkon, protože ušetříte paměť, kterou by jinak spotřeboval DataSet, a vyhnete se zpracování potřebnému k vytvoření a vyplnění obsahu DataSet.
LINQ to DataSet
LINQ to DataSet poskytuje funkce dotazování a kontrolu typů přímo během kompilace nad daty uloženými v mezipaměti v objektu DataSet. Umožňuje psát dotazy v jednom z vývojových jazyků rozhraní .NET Framework, jako je C# nebo Visual Basic. Další informace naleznete v tématu LINQ to DataSet.
LINQ to SQL
LINQ to SQL podporuje dotazy na objektový model mapovaný na datové struktury relační databáze bez použití přechodného konceptuálního modelu. Každá tabulka je reprezentována samostatnou třídou, úzce spáruje objektový model se schématem relační databáze. LINQ to SQL překládá dotazy integrované s jazykem v objektovém modelu do Transact-SQL a odesílá je do databáze ke spuštění. Když databáze vrátí výsledky, LINQ to SQL přeloží výsledky zpět do objektů. Další informace najdete v tématu LINQ to SQL.
ADO.NET Entity Framework
Rozhraní ADO.NET Entity Framework je navržené tak, aby vývojářům umožnilo vytvářet aplikace pro přístup k datům programováním v konceptuálním aplikačním modelu místo programování přímo proti schématu relačního úložiště. Cílem je snížit množství kódu a údržby vyžadované pro aplikace orientované na data. Další informace najdete v tématu ADO.NET Entity Framework.
Datové služby WCF
Datové služby WCF slouží k nasazení datových služeb na webu nebo intranetu. Data jsou strukturovaná jako entity a relace podle specifikací datového modelu entity. Data nasazená v tomto modelu jsou adresovatelná standardním protokolem HTTP. Další informace naleznete v tématu WCF Data Services 4.5.
XML a ADO.NET
ADO.NET využívá výkon XML k poskytování odpojeného přístupu k datům. ADO.NET byl navržen v úzké spolupráci s třídami XML na platformě .NET Framework; obě jsou součástí jedné architektury.
ADO.NET a třídy XML v rozhraní .NET Framework konvergují v objektu DataSet . Může být DataSet naplněno daty ze zdroje XML bez ohledu na to, jestli se jedná o soubor nebo datový proud XML.
DataSet lze zapsat jako XML vyhovující standardu World-Wide Web Consortium (W3C), které zahrnuje jeho schéma jako schéma XML určené jazykem definice schémat XML (XSD), bez ohledu na zdroj dat v DataSet. Vzhledem k tomu, že nativní formát DataSet serializace je XML, je to vynikající prostředek pro přenášení dat mezi vrstvami, což činí DataSet optimální volbou pro vzdálený přenos dat a kontextu schématu do a z XML webové služby. Další informace naleznete v tématu Dokumenty a data XML.