Zprostředkovatelé dat rozhraní .NET Framework
Zprostředkovatel dat rozhraní .NET Framework slouží k připojení k databázi, spouštění příkazů a načítání výsledků. Tyto výsledky se buď zpracují přímo, umístí DataSet se tak, aby bylo možné uživatele podle potřeby zpřístupnit, v kombinaci s daty z více zdrojů nebo vzdáleně mezi vrstvami. Zprostředkovatelé dat rozhraní .NET Framework jsou odlehčená a vytvářejí minimální vrstvu mezi zdrojem dat a kódem, což zvyšuje výkon bez obětování funkčnosti.
Následující tabulka uvádí zprostředkovatele dat, kteří jsou zahrnuti v rozhraní .NET Framework.
Zprostředkovatel dat rozhraní .NET Framework | Popis |
---|---|
Rozhraní .NET Framework Zprostředkovatel dat pro SQL Server | Poskytuje přístup k datům pro Microsoft SQL Server. System.Data.SqlClient Používá obor názvů. |
Rozhraní .NET Framework Zprostředkovatel dat pro OLE DB | Pro zdroje dat vystavené pomocí OLE DB. System.Data.OleDb Používá obor názvů. |
Rozhraní .NET Framework Zprostředkovatel dat pro rozhraní ODBC | Pro zdroje dat vystavené pomocí rozhraní ODBC. System.Data.Odbc Používá obor názvů. |
Rozhraní .NET Framework Zprostředkovatel dat pro Oracle | Pro zdroje dat Oracle. Rozhraní .NET Framework Zprostředkovatel dat pro Oracle podporuje klientský software Oracle verze 8.1.7 a novější a používá System.Data.OracleClient obor názvů. |
Zprostředkovatel EntityClient | Poskytuje přístup k datům pro aplikace Entity Data Model (EDM). System.Data.EntityClient Používá obor názvů. |
Rozhraní .NET Framework Zprostředkovatel dat pro SQL Server Compact 4.0. | Poskytuje přístup k datům pro Microsoft SQL Server Compact 4.0. Používá obor názvů System.Data.SqlServerCe . |
Základní objekty rozhraní .NET Framework Zprostředkovatel dat
Následující tabulka popisuje čtyři základní objekty, které tvoří zprostředkovatele dat rozhraní .NET Framework.
Objekt | Popis |
---|---|
Connection |
Vytvoří připojení ke konkrétnímu zdroji dat. Základní třída pro všechny Connection objekty je DbConnection třída. |
Command |
Spustí příkaz proti zdroji dat. Parameters Zveřejňuje a může provádět v oboru z objektu Transaction Connection . Základní třída pro všechny Command objekty je DbCommand třída. |
DataReader |
Čte stream dat jen pro čtení ze zdroje dat jen pro čtení. Základní třída pro všechny DataReader objekty je DbDataReader třída. |
DataAdapter |
Naplní DataSet a vyřeší aktualizace zdrojem dat. Základní třída pro všechny DataAdapter objekty je DbDataAdapter třída. |
Kromě základních tříd uvedených v tabulce uvedené výše v tomto dokumentu obsahuje zprostředkovatel dat rozhraní .NET Framework také třídy uvedené v následující tabulce.
Objekt | Popis |
---|---|
Transaction |
Zakóduje příkazy v transakcích ve zdroji dat. Základní třída pro všechny Transaction objekty je DbTransaction třída. ADO.NET také poskytuje podporu pro transakce využívající třídy v System.Transactions oboru názvů. |
CommandBuilder |
Pomocný objekt, který automaticky generuje vlastnosti DataAdapter příkazu nebo odvozuje informace o parametru z uložené procedury a naplní Parameters kolekci objektu Command . Základní třída pro všechny CommandBuilder objekty je DbCommandBuilder třída. |
ConnectionStringBuilder |
Pomocný objekt, který poskytuje jednoduchý způsob, jak vytvořit a spravovat obsah připojovací řetězec používaných Connection objekty. Základní třída pro všechny ConnectionStringBuilder objekty je DbConnectionStringBuilder třída. |
Parameter |
Definuje vstupní, výstupní a návratové parametry hodnoty pro příkazy a uložené procedury. Základní třída pro všechny Parameter objekty je DbParameter třída. |
Exception |
Vráceno při výskytu chyby ve zdroji dat. V případě chyby, ke které došlo v klientovi, zprostředkovatelé dat rozhraní .NET Framework vyvolá výjimku rozhraní .NET Framework. Základní třída pro všechny Exception objekty je DbException třída. |
Error |
Zveřejňuje informace z upozornění nebo chyby vrácené zdrojem dat. |
ClientPermission |
Poskytuje se pro atributy zabezpečení přístupu k kódu zprostředkovatele dat rozhraní .NET Framework. Základní třída pro všechny ClientPermission objekty je DBDataPermission třída. |
Rozhraní .NET Framework Zprostředkovatel dat pro SQL Server (SqlClient)
Rozhraní .NET Framework Zprostředkovatel dat pro SQL Server (SqlClient) používá k komunikaci s SQL Serverem vlastní protokol. Je jednoduchý a funguje dobře, protože je optimalizovaný pro přístup k SQL Serveru přímo bez přidání vrstvy OLE DB nebo odbc (Open Database Connectivity). Následující obrázek kontrastuje Zprostředkovatel dat rozhraní .NET Framework pro SQL Server s rozhraním .NET Framework Zprostředkovatel dat pro OLE DB. Rozhraní .NET Framework Zprostředkovatel dat pro OLE DB komunikuje se zdrojem dat OLE DB prostřednictvím komponenty služby OLE DB, která poskytuje sdružování připojení a transakční služby a zprostředkovatele OLE DB pro zdroj dat.
Poznámka:
Rozhraní .NET Framework Zprostředkovatel dat pro rozhraní ODBC má podobnou architekturu jako rozhraní .NET Framework Zprostředkovatel dat pro OLE DB, například volá komponentu služby ODBC.
Rozhraní .NET Framework Zprostředkovatel dat pro třídy SQL Serveru se nachází v System.Data.SqlClient oboru názvů.
Rozhraní .NET Framework Zprostředkovatel dat pro SQL Server podporuje místní i distribuované transakce. U distribuovaných transakcí rozhraní .NET Framework Zprostředkovatel dat pro SQL Server ve výchozím nastavení automaticky zasouvá do transakce a získá podrobnosti o transakci ze služeb komponent systému Windows nebo System.Transactions. Další informace naleznete v tématu Transakce a souběžnost.
Následující příklad kódu ukazuje, jak zahrnout System.Data.SqlClient
obor názvů do vašich aplikací.
Imports System.Data.SqlClient
using System.Data.SqlClient;
Rozhraní .NET Framework Zprostředkovatel dat pro OLE DB
Rozhraní .NET Framework Zprostředkovatel dat pro OLE DB (OleDb) používá nativní rozhraní OLE DB prostřednictvím zprostředkovatele komunikace modelu COM k povolení přístupu k datům. Rozhraní .NET Framework Zprostředkovatel dat pro OLE DB podporuje místní i distribuované transakce. V případě distribuovaných transakcí rozhraní .NET Framework Zprostředkovatel dat pro OLE DB ve výchozím nastavení automaticky začíná do transakce a získá podrobnosti o transakcích ze služeb komponent systému Windows. Další informace naleznete v tématu Transakce a souběžnost.
V následující tabulce jsou uvedeni poskytovatelé, kteří byli testováni s ADO.NET.
Ovladač | Poskytovatel |
---|---|
SQLOLEDB | Zprostředkovatel Microsoft OLE DB pro SQL Server |
MSDAORA | Zprostředkovatel Microsoft OLE DB pro Oracle |
Microsoft.Jet.OLEDB.4.0 | Zprostředkovatel OLE DB pro Microsoft Jet |
Poznámka:
Použití databáze Accessu (Jet) jako zdroje dat pro vícevláknové aplikace, jako je například ASP.NET aplikací, se nedoporučuje. Pokud je nutné použít Jet jako zdroj dat pro ASP.NET aplikaci, uvědomte si, že ASP.NET aplikace, které se připojují k databázi Accessu, můžou narazit na problémy s připojením.
Rozhraní .NET Framework Zprostředkovatel dat pro OLE DB nepodporuje rozhraní OLE DB verze 2.5. Zprostředkovatelé OLE DB, kteří vyžadují podporu rozhraní OLE DB 2.5, nebudou správně fungovat s rozhraním .NET Framework Zprostředkovatel dat pro OLE DB. To zahrnuje zprostředkovatele Microsoft OLE DB pro Exchange a zprostředkovatele Microsoft OLE DB pro publikování na internetu.
Rozhraní .NET Framework Zprostředkovatel dat pro OLE DB nefunguje se zprostředkovatelem OLE DB pro ROZHRANÍ ODBC (MSDASQL). Pokud chcete získat přístup ke zdroji dat ODBC pomocí ADO.NET, použijte rozhraní .NET Framework Zprostředkovatel dat pro rozhraní ODBC.
Rozhraní .NET Framework Zprostředkovatel dat pro třídy OLE DB se nachází v System.Data.OleDb oboru názvů. Následující příklad kódu ukazuje, jak zahrnout System.Data.OleDb
obor názvů do vašich aplikací.
Imports System.Data.OleDb
using System.Data.OleDb;
Rozhraní .NET Framework Zprostředkovatel dat pro rozhraní ODBC
Rozhraní .NET Framework Zprostředkovatel dat pro rozhraní ODBC (Odbc) používá nativní správce ovladačů ODBC (DM) k povolení přístupu k datům. Zprostředkovatel dat ODBC podporuje místní i distribuované transakce. U distribuovaných transakcí zprostředkovatel dat ODBC ve výchozím nastavení automaticky začíná do transakce a získá podrobnosti o transakcích ze služeb komponent systému Windows. Další informace naleznete v tématu Transakce a souběžnost.
Následující tabulka ukazuje ovladače ODBC testované pomocí ADO.NET.
Ovladač |
---|
SQL Server |
Microsoft ODBC pro Oracle |
Ovladač aplikace Microsoft Access (*.mdb) |
Rozhraní .NET Framework Zprostředkovatel dat pro třídy ODBC se nachází v System.Data.Odbc oboru názvů.
Následující příklad kódu ukazuje, jak zahrnout System.Data.Odbc
obor názvů do vašich aplikací.
Imports System.Data.Odbc
using System.Data.Odbc;
Poznámka:
Rozhraní .NET Framework Zprostředkovatel dat pro rozhraní ODBC vyžaduje MDAC 2.6 nebo novější verzi a doporučuje se MDAC 2.8 SP1.
Rozhraní .NET Framework Zprostředkovatel dat pro Oracle
Rozhraní .NET Framework Zprostředkovatel dat pro Oracle (OracleClient) umožňuje přístup k datům ke zdrojům dat Oracle prostřednictvím softwaru pro připojení klienta Oracle. Poskytovatel dat podporuje klientský software Oracle verze 8.1.7 nebo novější. Zprostředkovatel dat podporuje místní i distribuované transakce. Další informace naleznete v tématu Transakce a souběžnost.
Rozhraní .NET Framework Zprostředkovatel dat pro Oracle vyžaduje v systému klientský software Oracle (verze 8.1.7 nebo novější) před připojením ke zdroji dat Oracle.
Rozhraní .NET Framework Zprostředkovatel dat pro třídy Oracle jsou umístěny v System.Data.OracleClient oboru názvů a jsou obsaženy System.Data.OracleClient.dll
v sestavení. Na aplikaci, která používá zprostředkovatele dat, musíte odkazovat jak na System.Data.dll
aplikaci, tak na System.Data.OracleClient.dll
to.
Následující příklad kódu ukazuje, jak zahrnout System.Data.OracleClient
obor názvů do vašich aplikací.
Imports System.Data
Imports System.Data.OracleClient
using System.Data;
using System.Data.OracleClient;
Volba Zprostředkovatel dat rozhraní .NET Framework
V závislosti na návrhu a zdroji dat pro vaši aplikaci může váš výběr zprostředkovatele dat rozhraní .NET Framework zlepšit výkon, možnosti a integritu vaší aplikace. Následující tabulka popisuje výhody a omezení jednotlivých zprostředkovatelů dat rozhraní .NET Framework.
Poskytovatel | Notes |
---|---|
Rozhraní .NET Framework Zprostředkovatel dat pro SQL Server | Doporučuje se pro aplikace střední vrstvy, které používají Microsoft SQL Server. Doporučuje se pro jednovrstvé aplikace, které používají Microsoft Database Engine (MSDE) nebo SQL Server. Doporučujeme použít zprostředkovatele OLE DB pro SQL Server (SQLOLEDB) s rozhraním .NET Framework Zprostředkovatel dat pro OLE DB. |
Rozhraní .NET Framework Zprostředkovatel dat pro OLE DB | Pro SQL Server se místo tohoto poskytovatele doporučuje rozhraní .NET Framework Zprostředkovatel dat pro SQL Server. Doporučuje se pro jednovrstvé aplikace, které používají databáze Microsoft Accessu. Použití accessové databáze pro aplikaci střední vrstvy se nedoporučuje. |
Rozhraní .NET Framework Zprostředkovatel dat pro rozhraní ODBC | Doporučuje se pro aplikace střední a jednovrstvé, které používají zdroje dat ODBC. |
Rozhraní .NET Framework Zprostředkovatel dat pro Oracle | Doporučuje se pro aplikace střední a jednovrstvé, které používají zdroje dat Oracle. |
Zprostředkovatel EntityClient
Zprostředkovatel EntityClient se používá pro přístup k datům na základě modelu Entity Data Model (EDM). Na rozdíl od ostatních zprostředkovatelů dat rozhraní .NET Framework nepracuje přímo se zdrojem dat. Místo toho používá Entity SQL ke komunikaci s podkladovým poskytovatelem dat. Další informace naleznete v tématu EntityClient Provider for the Entity Framework.