Condividi tramite


Creazione di applicazioni dati con Visual Studio

Aggiornamento: novembre 2007

In Visual Studio sono disponibili molti strumenti in fase di progettazione per semplificare il processo di creazione delle applicazioni che richiedono l'accesso ai dati. In questa introduzione vengono forniti i cenni preliminari sui processi di base coinvolti nella creazione di applicazioni che utilizzano dati. Le informazioni qui fornite, in cui sono deliberatamente evitati molti dettagli, vanno intese come fonte generale di informazione e come punto di partenza per le numerose pagine della Guida associate alla creazione di un'applicazione dati.

Quando si sviluppano applicazioni che richiedono l'accesso ai dati in Visual Studio, possono presentarsi diverse esigenze. In alcuni casi, può essere necessario visualizzare i dati in un form. In altri casi, può invece essere necessario individuare un metodo per condividere le informazioni con altri processi o applicazioni.

L'architettura dati sottostante utilizzata per la creazione di applicazioni in Visual Studio è ADO.NET. A prescindere dall'utilizzo che viene fatto dei dati, è necessario comprendere alcuni concetti fondamentali. Potrebbe non essere necessario conoscere alcuni dettagli della gestione dei dati, ad esempio è possibile ignorare come creare un database a livello di codice, ma è molto utile conoscere i concetti base di ADO.NET, nonché gli strumenti di dati (procedure guidate e finestre di progettazione) disponibili in Visual Studio.

L'attività generale di utilizzo dei dati in un'applicazione può essere suddivisa in vari processi principali. Prima di procedere alla visualizzazione dei dati in un form, è ad esempio necessario connettersi a un'origine dati, possibilmente un database o un servizio che fornisce dati, e recuperare i dati da visualizzare. Dopo aver passato i dati nell'applicazione, può essere necessario individuare una posizione in cui archiviarli temporaneamente, ad esempio un oggetto DataSet o LINQ to SQL.

Una tipica applicazione dati utilizzerà la maggior parte dei processi illustrati nello schema seguente:

Il ciclo dei dati

Rappresentazione grafica del ciclo di dati

Quando si crea un'applicazione, è necessario pensare all'attività che si intende eseguire. Per un supporto nella ricerca degli strumenti di Visual Studio e degli oggetti .NET Framework disponibili, utilizzare le sezioni illustrate di seguito.

Nota:

È importante ricordare che esistono le procedure guidate che consentono di semplificare molti processi illustrati nello schema precedente. La Configurazione guidata origine dati fornisce all'applicazione un numero di informazioni sufficiente a connettersi ai dati, creare un dataset tipizzato per riceverli e infine portarli all'interno dell'applicazione.

Per una rapida descrizione dell'utilizzo di Visual Studio come supporto per lo sviluppo di applicazioni dati, vedere Procedura dettagliata: creazione di un'applicazione dati semplice.

Connessione ai dati

Per portare i dati all'interno dell'applicazione e rinviare le modifiche all'origine dati, è necessario stabilire una sorta di comunicazione bidirezionale. Tale comunicazione è generalmente gestita dalla connessione di un TableAdapter nelle applicazione che utilizzano i dataset o da DataContext per le applicazioni che utilizzano LINQ to SQL. In Visual Studio sono presenti diversi strumenti per la creazione di connessioni che è possibile utilizzare con l'applicazione. Per ulteriori informazioni sulla connessione dell'applicazione ai dati, vedere Connessione ai dati in Visual Studio.

Per informazioni sull'utilizzo dei dataset per connettere l'applicazione ai dati in un database, vedere Procedura dettagliata: connessione ai dati di un database.

Preparazione dell'applicazione al ricevimento di dati

Se l'applicazione utilizza un modello di dati disconnesso, è necessario archiviare temporaneamente i dati dell'applicazione mentre la si utilizza. In Visual Studio sono disponibili strumenti che consentono di creare gli oggetti utilizzati dall'applicazione per archiviare temporaneamente i dati: dataset e oggetti LINQ to SQL.

Nota:

Di solito, in un'applicazione che utilizza un modello di dati disconnesso si procede effettuando la connessione a un database, eseguendo una query per il passaggio di dati nell'applicazione, effettuando la disconnessione dal database e infine modificando i dati non in linea prima di riconnettere e aggiornare il database.

Per ulteriori informazioni sulla creazione di dataset tipizzati nell'applicazione, vedere Preparazione dell'applicazione al ricevimento di dati. Per informazioni aggiuntive sull'utilizzo dei dataset nelle applicazioni a più livelli, vedere Procedura: separare dataset e TableAdapter in progetti diversi.

Per informazioni sulla creazione di un dataset, completare le procedure illustrate in Procedura dettagliata: creazione di un dataset con Progettazione DataSet.

Per informazioni sulla creazione di oggetti LINQ to SQL, completare le procedure illustrate in Procedura dettagliata: creazione di classi LINQ to SQL (Progettazione relazionale oggetti).

Recupero di dati nell'applicazione

A prescindere dal fatto che nell'applicazione venga utilizzato o meno un modello di dati, è necessario essere in grado di recuperare dati all'interno di questa. Per passare dati nell'applicazione, si eseguono query o stored procedure in un database Le applicazioni che archiviano dati nei dataset eseguono query e stored procedure utilizzando TableAdapter, mentre le applicazioni che archiviano dati negli oggetti LINQ to SQL eseguono query utilizzando Query LINQ to SQL e stored procedure utilizzando Metodi DataContext (Progettazione relazionale oggetti). Per ulteriori informazioni sulla creazione e modifica di query che utilizzano TableAdapter, vedere Procedura: creare query TableAdapter e Procedura: modificare query TableAdapter.

Per ulteriori informazioni sul caricamento dei dati nei dataset e negli oggetti LINQ to SQL e sull'esecuzione di query e stored procedure, vedere Recupero di dati nell'applicazione.

Per informazioni sul caricamento dei dati in un dataset, completare le procedure illustrate in Procedura dettagliata: visualizzazione dei dati su un form in un'applicazione Windows ed esaminare il codice nel gestore eventi di caricamento dei form.

Per informazioni sul caricamento dei dati negli oggetti LINQ to SQL, completare le procedure illustrate in Procedura dettagliata: creazione di classi LINQ to SQL (Progettazione relazionale oggetti).

Per informazioni sulla creazione e l'esecuzione di una query SQL, vedere Procedura: creare ed eseguire un'istruzione SQL che restituisce righe.

Per informazioni sull'esecuzione di una stored procedure, vedere Procedura: eseguire una stored procedure che restituisce righe.

Visualizzazione di dati su form in un'applicazione Windows

In seguito al passaggio nell'applicazione, i dati vengono solitamente visualizzati in un form per consentirne la visualizzazione o la modifica da parte degli utenti. Visual Studio include la Finestra Origini dati che consente di trascinare elementi in un form per creare automaticamente controlli con associazione a dati per la visualizzazione dei dati. Per ulteriori informazioni sull'associazione ai dati e la visualizzazione dei dati da parte degli utenti, vedere Visualizzazione di dati su form nelle applicazioni Windows.

Per informazioni sulla presentazione dei dati agli utenti nei Windows Form, completare le procedure illustrate in Procedura dettagliata: visualizzazione dei dati su un form in un'applicazione Windows, prestando particolare attenzione al processo di trascinamento degli elementi dalla finestra Origini dati.

Modifica di dati nell'applicazione

Dopo che i dati sono stati presentati agli utenti, è probabile che questi ultimi apporteranno delle variazioni aggiungendo nuovi record o modificando quelli esistenti prima di rinviarli al database. Per implementare tali modifiche saranno utilizzati i singoli oggetti DataRow che costituiscono le tabelle di un dataset. Per ulteriori informazioni sull'utilizzo dei dati successivamente al loro caricamento nel dataset, vedere Modifica di dati nell'applicazione.

Nota:

Se si creano form trascinando elementi dalla finestra Origini dati, molte delle modifiche ai dati verranno gestite automaticamente tramite i controlli associati ai dati. Quando si modificano valori nei controlli, i nuovi valori vengono aggiunti automaticamente al dataset. È possibile aggiungere o rimuovere record facendo clic sul pulsante Aggiungi nuovo oppure Elimina nel controllo BindingNavigator.

Per informazioni sull'aggiunta di nuovi record in un dataset, vedere Procedura: aggiungere righe a una DataTable.

Per informazioni sulla modifica dei record esistenti in un dataset, vedere Procedura: modificare le righe in un oggetto DataTable.

Per informazioni sull'eliminazione di record da un dataset, vedere Procedura: eliminare righe in un oggetto DataTable.

Convalida dei dati

Dopo aver apportato modifiche ai dati, solitamente si effettuano delle verifiche prima di consentire che i valori modificati vengano accettati nel dataset o scritti nel database. Il processo di verifica dell'accettabilità dei nuovi valori in base ai requisiti dell'applicazione è denominato convalida. È possibile aggiungere una logica per il controllo dei valori nell'applicazione mentre sono in corso le modifiche. In Visual Studio sono disponibili strumenti che consentono di aggiungere codice per la convalida dei dati durante la modifica di colonna e righe. Per ulteriori informazioni, vedere Convalida dei dati.

Per informazioni sull'aggiunta della convalida dei dati all'applicazione, vedere Procedura dettagliata: aggiunta di convalida a un dataset.

Per informazioni su come aggiungere la convalida a un dataset separato in un'applicazione a più livelli, vedere Procedura: aggiungere la convalida a un dataset a più livelli.

Salvataggio di dati

Dopo aver apportato le modifiche nell'applicazione e averle convalidate, generalmente si procede al relativo rinvio al database. Le applicazioni che archiviano i dati nei dataset utilizzano generalmente un TableAdapterManager per salvare i dati. Per ulteriori informazioni, vedere Panoramica di TableAdapterManager. Le applicazioni che archiviano i dati negli oggetti LINQ to SQL utilizzano il metodo SubmitChanges per salvare i dati.

Per ulteriori informazioni sull'invio di dati aggiornati in un database, vedere Salvataggio di dati.

Per informazioni sull'invio di dati aggiornati da un dataset a un database, completare le procedure illustrate in Procedura dettagliata: salvataggio dei dati dalle tabelle dati correlate (aggiornamento gerarchico).

Vedere anche

Concetti

Novità relative ai dati

Cenni preliminari sulla visualizzazione dei dati

Dispositivi e accesso ai dati

Altre risorse

Guida introduttiva all'accesso ai dati

ADO.NET

Procedure dettagliate relative ai dati

Connessione ai dati in Visual Studio

Accesso ai dati tramite ASP.NET