Una fonte dati connessa è una sorgente di dati (tipicamente un database) a cui è necessario rimanere collegati per tutta la fase di recupero e modifica delle informazioni: una volta chiusa la connessione, infatti, non è più possibile accedere ad esse. Al contrario, una fonte dati disconnessa consente di leggere e modificare i dati senza la necessità di essere costantemente collegati alla sorgente che li contiene.
Il .NET Framework fornisce un pieno supporto ad entrambe queste modalità, grazie alle classi contenute nel namespace System.Data
. La gestione delle fonti dati connesse è resa possibile dagli oggetti astratti DbConnection
, DbCommand
e DbDataReader
, che si specializzano in base al tipo di database a cui ci si vuole collegare (ad esempio, SqlConnection
, SqlCommand
e SqlDataReader
nel caso di SQL Server). Per lavorare con fonti dati disconnesse, invece, si utilizzano gli oggetti DataSet
e DataTable
.
Questi due mondi possono comunicare tra loro attraverso l’uso dei DataAdapter
, ovvero oggetti che consentono, da una parte, di trasferire le informazioni prelevate da un database in una fonte dati disconnessa, in modo che sia possibile manipolarle senza necessità di mantenere aperta la connessione, dall’altra, di riportare nel database tutte le modifiche effettuate.