Condividi tramite


Implementazione di un DataReader

È necessario che dall'implementazione del DataReader vengano fornite due funzionalità di base: accesso forward-only a uno o più dei gruppi di risultati ottenuti tramite l'esecuzione di un Command e accesso ai valori di colonna all'interno di ogni riga.

I tipi di dati contenuti nell'origine dati vengono memorizzati nell'applicazione basata su .NET sotto forma di tipi di .NET Framework. Nell'implementazione di DataReader vengono inoltre forniti dei metodi delle funzioni di accesso tipizzate in modo sicuro per il DataReader che restituiscono valori di colonna sotto forma di tipi di .NET Framework. GetInt32, GetString e così via sono esempi di funzioni di accesso tipizzate in modo sicuro.

Se nel provider di dati .NET Framework sono presenti tipi proprietari che non è possibile esporre adeguatamente sotto forma di tipi di .NET Framework, sarà possibile estendere le interfacce in modo che supportino i tipi proprietari, quindi aggiungere funzioni di accesso tipizzate per il DataReader che restituiscano anche tipi proprietari. È ad esempio possibile aggiungere GetMyStructure, GetMyTimeStamp e così via. Un esempio è costituito dal provider di dati .NET Framework per SQL Server, in cui i tipi proprietari vengono esposti mediante lo spazio dei nomi System.Data.SqlTypes. Tali tipi vengono quindi esposti da SqlDataReader come SqlTypes mediante i metodi delle funzioni di accesso tipizzate in modo sicuro. Ad esempio: GetSqlBinary, GetSqlDateTime, GetSqlDecimal e così via.

Negli argomenti seguenti viene riportato del codice di esempio per l'implementazione di un oggetto DataReader, inclusi alcuni metodi di esempio delle funzioni di accesso tipizzate in modo sicuro.

Per un esempio di implementazione in Visual Basic:

Per un esempio di implementazione in C#:

Vedere anche

Implementazione di un provider di dati .NET Framework | Esempio di provider di dati .NET Framework