Delen via


Naast elkaar uitvoeren in ADO.NET

Naast elkaar uitvoeren in .NET Framework is de mogelijkheid om een toepassing uit te voeren op een computer waarop meerdere versies van .NET Framework zijn geïnstalleerd, exclusief met behulp van de versie waarvoor de toepassing is gecompileerd. Zie Side-by-Side Execution (Naast elkaar uitvoeren) voor gedetailleerde informatie over het configureren van side-by-side-uitvoering.

Een toepassing die is gecompileerd met behulp van één versie van .NET Framework, kan worden uitgevoerd op een andere versie van .NET Framework. U wordt echter aangeraden een versie van de toepassing te compileren voor elke geïnstalleerde versie van .NET Framework en deze afzonderlijk uit te voeren. In beide scenario's moet u rekening houden met wijzigingen in ADO.NET tussen releases die van invloed kunnen zijn op de voorwaartse compatibiliteit of achterwaartse compatibiliteit van uw toepassing.

Vooruitcompatibiliteit en compatibiliteit met eerdere versies

Compatibiliteit doorsturen betekent dat een toepassing kan worden gecompileerd met een eerdere versie van .NET Framework, maar nog steeds wordt uitgevoerd op een latere versie van .NET Framework. ADO.NET code die is geschreven voor .NET Framework versie 1.1, is compatibel met latere versies.

Compatibiliteit met eerdere versies betekent dat een toepassing wordt gecompileerd voor een nieuwere versie van .NET Framework, maar blijft worden uitgevoerd op eerdere versies van het .NET Framework zonder verlies van functionaliteit. Dit is natuurlijk niet het geval voor functies die zijn geïntroduceerd in een nieuwe versie van .NET Framework.

De .NET Framework-gegevensprovider voor ODBC

Vanaf versie 1.1 is de .NET Framework-gegevensprovider voor ODBC (System.Data.Odbc) opgenomen als onderdeel van .NET Framework.

Als u een toepassing hebt ontwikkeld voor .NET Framework versie 1.0 die gebruikmaakt van de ODBC-gegevensprovider om verbinding te maken met uw gegevensbron en u die toepassing wilt uitvoeren op .NET Framework versie 1.1 of een latere versie, moet u de naamruimte voor de ODBC-gegevensprovider bijwerken naar System.Data.Odbc. Vervolgens moet u deze opnieuw compileren voor de nieuwere versie van .NET Framework.

Als u een toepassing hebt ontwikkeld voor .NET Framework versie 2.0 of hoger die gebruikmaakt van de ODBC-gegevensprovider om verbinding te maken met uw gegevensbron en u die toepassing wilt uitvoeren op .NET Framework versie 1.0, moet u de ODBC-gegevensprovider downloaden en installeren op het .NET Framework-systeem versie 1.0. Vervolgens moet u de naamruimte voor de ODBC-gegevensprovider wijzigen in Microsoft.Data.Odbc en de toepassing opnieuw compileren voor .NET Framework versie 1.0.

De .NET Framework-gegevensprovider voor Oracle

Vanaf versie 1.1 is de .NET Framework-gegevensprovider voor Oracle (System.Data.OracleClient) opgenomen als onderdeel van .NET Framework.

Als u een toepassing hebt ontwikkeld voor .NET Framework versie 2.0 of hoger die gebruikmaakt van de gegevensprovider om verbinding te maken met uw gegevensbron en u die toepassing wilt uitvoeren op .NET Framework versie 1.0, moet u de gegevensprovider downloaden en installeren op het .NET Framework versie 1.0-systeem.

Beveiliging van codetoegang

Vanaf .NET Framework versie 2.0 kunnen alle .NET Framework-gegevensproviders worden gebruikt in gedeeltelijk vertrouwde zones. Daarnaast is er een nieuwe beveiligingsfunctie toegevoegd aan de .NET Framework-gegevensproviders in .NET Framework versie 1.1. Met deze functie kunt u beperken welke verbindingsreeks s in een bepaalde beveiligingszone kunnen worden gebruikt. U kunt ook het gebruik van lege wachtwoorden voor een bepaalde beveiligingszone uitschakelen. Zie Code Access Security en ADO.NET voor meer informatie.

Omdat elke installatie van .NET Framework een afzonderlijk Security.config-bestand heeft, zijn er geen compatibiliteitsproblemen met beveiligingsinstellingen. Als uw toepassing echter afhankelijk is van de extra beveiligingsmogelijkheden van ADO.NET opgenomen in .NET Framework versie 1.1 en hoger, kunt u deze niet distribueren naar een versie 1.0-systeem.

SqlCommand-uitvoering

In .NET Framework versie 1.1 en hoger ExecuteReader wordt alleen een opdracht uitgevoerd in de context van de sp_executesql opgeslagen procedure als de opdracht parameters bevat, wat een prestatievoordeel biedt. Als een opdracht die van invloed is op de status van de verbinding wordt opgenomen in een niet-geparameteriseerde opdracht, wordt de status van de verbinding gewijzigd voor alle volgende opdrachten die worden uitgevoerd terwijl de verbinding is geopend.

Houd rekening met de volgende batch opdrachten die worden uitgevoerd in een aanroep naar ExecuteReader.

SET NOCOUNT ON;  
SELECT * FROM dbo.Customers;  

NOCOUNT blijft ON behouden voor eventuele volgende opdrachten die worden uitgevoerd terwijl de verbinding is geopend.

Zie ook