Aggiornare i dati usando un oggetto TableAdapter nelle applicazioni .NET Framework
Nota
I set di dati e le classi correlate sono tecnologie .NET Framework legacy dei primi anni '2000 che consentono alle applicazioni di lavorare con i dati in memoria mentre le applicazioni vengono disconnesse dal database. Le tecnologie sono particolarmente utili per le applicazioni che consentono agli utenti di modificare i dati e rendere persistenti le modifiche apportate al database. Anche se i set di dati hanno dimostrato di essere una tecnologia molto efficace, è consigliabile che le nuove applicazioni .NET usino Entity Framework Core. Entity Framework offre un modo più naturale per usare i dati tabulari come modelli a oggetti e ha un'interfaccia di programmazione più semplice.
Dopo aver modificato e convalidato i dati nel set di dati, è possibile inviare nuovamente i dati aggiornati a un database chiamando il Update
metodo di un TableAdapter. Il Update
metodo aggiorna una singola tabella dati ed esegue il comando corretto (INSERT
, UPDATE
o DELETE
) in base a RowState ogni riga di dati nella tabella. Quando un set di dati include tabelle correlate, Visual Studio genera una classe TableAdapterManager usata per eseguire gli aggiornamenti. La classe TableAdapterManager garantisce che gli aggiornamenti vengano eseguiti nell'ordine corretto in base ai vincoli di chiave esterna definiti nel database. Quando si usano controlli associati a dati, l'architettura di associazione dati crea una variabile membro della classe TableAdapterManager denominata tableAdapterManager.
Nota
Quando si tenta di aggiornare un'origine dati con il contenuto di un set di dati, è possibile ottenere errori. Per evitare errori, è consigliabile inserire il codice che chiama il metodo dell'adattatore all'interno di Update
un try
/catch
blocco.
La procedura esatta per l'aggiornamento di un'origine dati può variare a seconda delle esigenze aziendali, ma include i passaggi seguenti:
Chiamare il metodo dell'adattatore
Update
in untry
/catch
blocco.Se viene rilevata un'eccezione, individuare la riga di dati che ha causato l'errore.
Riconciliare il problema nella riga di dati (a livello di codice, se possibile o presentando la riga non valida all'utente per la modifica) e quindi riprovare l'aggiornamento (HasErrors, GetErrors).
Salvare i dati in un database
Chiamare il Update
metodo di un oggetto TableAdapter. Passare il nome della tabella dati che contiene i valori da scrivere nel database.
Per aggiornare un database utilizzando un tableadapter
Racchiudere il metodo TableAdapter
Update
in untry
/catch
blocco. Nell'esempio seguente viene illustrato come aggiornare il contenuto dellaCustomers
tabella inNorthwindDataSet
da untry
/catch
blocco.