Condividi tramite


Come chiamare una stored procedure usando LINQ (Visual Basic)

Language-Integrated query (LINQ) semplifica l'accesso alle informazioni sul database, inclusi oggetti di database come stored procedure.

Nell'esempio seguente viene illustrato come creare un'applicazione che chiama una stored procedure in un database di SQL Server. L'esempio mostra come chiamare due diverse procedure memorizzate nel database. Ogni routine restituisce i risultati di una query. Una routine accetta parametri di input e l'altra routine non accetta parametri.

Gli esempi in questo articolo usano il database di esempio Northwind. Per ottenere il database, vedere Scaricamento di database di esempio.

Annotazioni

Il computer potrebbe visualizzare nomi o percorsi diversi per alcuni degli elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti. L'edizione di Visual Studio disponibile e le impostazioni usate determinano questi elementi. Per altre informazioni, vedere Personalizzazione dell'IDE.

Per creare una connessione a un database

  1. In Visual Studio, apri Esplora server /Esplora database, facendo clic su Esplora server /Esplora database nel menu Visualizza .

  2. Fare clic con il pulsante destro del mouse su Connessioni Dati in Esplora Server /Esplora Database e quindi scegliere Aggiungi Connessione .

  3. Specificare una connessione valida al database di esempio Northwind.

Per aggiungere un progetto contenente un file LINQ to SQL

  1. In Visual Studio, nel menu File, punta a Nuovo e quindi fai clic su Progetto. Selezionare Visual Basic Windows Form Application come tipo di progetto.

  2. Nel menu Progetto , fare clic su Aggiungi Nuovo Elemento. Selezionare il modello di elemento LINQ to SQL Classes.

  3. Denominare il file northwind.dbml. Fare clic su Aggiungi. Il Progettista relazionale di oggetti (O/R Designer) viene aperto per il file northwind.dbml.

Per aggiungere stored procedure alla finestra di progettazione O/R

  1. Nel Esplora Server/Esplora Database, espandi la connessione al database Northwind. Espandere la cartella Stored procedure .

    Se la finestra di progettazione O/R è stata chiusa, è possibile riaprirla facendo doppio clic sul file northwind.dbml aggiunto in precedenza.

  2. Fare clic sulla stored procedure Sales by Year e trascinarla nel riquadro destro della finestra di progettazione. Fare clic sulla procedura memorizzata Ten Most Expensive Products e trascinala nel riquadro destro della finestra di progettazione.

  3. Salvare le modifiche e chiudere la finestra di progettazione.

  4. Salva il tuo progetto.

Per aggiungere codice per visualizzare i risultati delle procedure memorizzate

  1. Trascina un controllo sul Windows Form predefinito per il tuo progetto, Form1, dalla casella degli strumenti DataGridView.

  2. Fare doppio clic su Form1 per aggiungere codice al relativo Load evento.

  3. Quando sono state aggiunte stored procedure al Designer O/R, il designer ha aggiunto un DataContext oggetto per il tuo progetto. Questo oggetto contiene il codice necessario per accedere a tali procedure. L'oggetto DataContext per il progetto viene denominato in base al nome del file con estensione dbml. Per questo progetto, l'oggetto DataContext è denominato northwindDataContext.

    È possibile creare un'istanza di DataContext nel codice e chiamare i metodi della stored procedure specificati dall'O/R Designer. Per associare all'oggetto DataGridView, potrebbe essere necessario forzare l'esecuzione immediata della query chiamando il metodo ToList sui risultati della stored procedure.

    Aggiungere il codice seguente all'evento Load per chiamare una delle stored procedure esposte come metodi per il contesto dati.

    Dim db As New northwindDataContext
    
    ' Display the results of the Sales_by_Year stored procedure.
    DataGridView1.DataSource =
        db.Sales_by_Year(#1/1/1996#, #1/1/2007#).ToList()
    
    ' Display the results of the Ten_Most_Expensive_Products
    ' stored procedure.
    
    DataGridView1.DataSource =
        db.Ten_Most_Expensive_Products.ToList()
    
  4. Premere F5 per eseguire il progetto e visualizzare i risultati.

Vedere anche