Un gruppo di dati è un deposito di dati di in-memoria che può tenere le tabelle numerose. I gruppi di dati tengono soltanto i dati e non si interagiscono con alcuna fonte di dati. È lo SqlDataAdapter che controlla i collegamenti con la fonte di dati e ci dà il comportamento staccato. Lo SqlDataAdapter apre un collegamento soltanto quando richiesto e lo chiude non appena ha effettuato la relativa operazione.
Lo SqlDataAdapter effettua le seguenti mansioni quando riempiono un gruppo di dati di dati:
- Aprire il collegamento
- Richiamare i dati nel gruppo di dati
- Chiudere il collegamento
Realizza le seguenti azioni quando aggiornano la fonte di dati con il gruppo di dati cambia:
- Aprire il collegamento
- Scrivere i cambiamenti dal gruppo di dati alla fonte di dati
- Chiudere il collegamento
I piani d'azione della coppia illustrano perchè desiderereste lavorare con i dati staccati: popolare il funzionamento senza connettività della rete e rendere i Web site più scalable. Considerare la gente di vendite che ha bisogno dei dati del cliente mentre viaggiano. All'inizio del giorno, avranno bisogno della sincronizzazione in su con la base di dati principale di avere le ultime informazioni disponibili. Durante il giorno, apporteranno le modifiche ai dati attuali del cliente, aggiungono i nuovi clienti ed immettono i nuovi ordini. Ciò è giusta perché hanno una data base di cliente o di regione in cui la gente non cambierà le stesse annotazioni. Alla conclusione del giorno, la persona di vendite collegherà alla rete e l'aggiornamento cambia per durante la notte procedere.
Un altro piano d'azione sta rendendo un Web site più scalable. Con uno SqlDataReader, dovete andare di nuovo alla base di dati per le annotazioni ogni volta che mostrate una pagina. Ciò richiede un nuovo collegamento per ogni carico della pagina, che danneggerà lo scalability come il numero di utenti aumenta. Il one-way per alleviare questo è di usare un gruppo di dati che è una volta aggiornata ed immagazzinato nel nascondiglio.
Le eccezioni al piano d'azione qui sopra includono le situazioni dove dovete aggiornare i dati. Allora dovete prendere una decisione, basata sulla natura di come i dati saranno usati quanto alla vostra strategia. Usare i dati staccati quando le vostre informazioni soprattutto sono lette soltanto, ma considerare altre alternative (come usando Object di SqlCommand per l'aggiornamento immediato) quando i vostri requisiti richiedono qualcosa più dinamico.
|