Condividi tramite


Creare Funzioni di Azure con l'estensione Associazioni SQL per Visual Studio Code

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di AzureAzure Synapse Analytics

Il supporto delle Funzioni di Azure per i binding SQL è disponibile in anteprima per i binding di input e di output, rendendo più semplice la connessione a un database SQL di Azure o a un database SQL Server per le Funzioni di Azure. L'estensione Associazioni SQL per Visual Studio Code semplifica il processo di sviluppo di Funzioni di Azure con associazioni SQL e viene installato automaticamente con l'estensione mssql per Visual Studio Code Extension Pack. Questo articolo illustra come usare l'estensione Binding SQL per Visual Studio Code per creare Funzioni di Azure con associazioni SQL.

Nota

Attualmente, l'estensione Associazioni SQL supporta solo Funzioni di Azure C#. Le funzioni Azure in JavaScript e Python supportano le associazioni SQL, ma non sono supportate dall'estensione per associazioni SQL in questo momento.

Da Esplora Oggetti

Per creare una funzione di Azure da una Table o una View specifica in Esplora oggetti (EO), fare clic con il pulsante destro del mouse su una tabella o una vista da un server connesso in Esplora oggetti di SQL Server e scegliere Create Azure Function with SQL Binding.

Comando OE Tabella:

Screenshot del menu contestuale di Esplora oggetti per aggiungere un'associazione SQL da tabella.

Visualizza comando OE:

Screenshot del menu di scelta rapida dell'Esplora oggetti per aggiungere un'associazione SQL dalla Vista.

Per altre informazioni sulla creazione di una funzione di Azure con associazioni SQL dal Esplora oggetti di SQL Server, vedere Creare Funzioni di Azure con l'estensione Binding SQL per Visual Studio Code tramite il Esplora oggetti.

Dalla Palette dei comandi

Per creare una nuova funzione con un'associazione SQL, eseguire il MS SQL: Create Azure Function with SQL Binding comando dal riquadro comandi.

Screenshot del comando 'MS SQL: Create Azure Function with SQL Binding (anteprima)' nel riquadro comandi di Visual Studio Code.

Per altre informazioni sulla creazione di una funzione di Azure con associazioni SQL dal riquadro comandi, vedere Creare Funzioni di Azure con l'estensione Associazioni SQL per Visual Studio Code tramite il riquadro comandi.

In una funzione di Azure esistente

Per aggiungere un'associazione SQL a una funzione esistente, aprire la funzione di Azure C# in un editor e quindi eseguire il MS SQL: Add SQL Binding comando dal riquadro comandi.

Screenshot del comando della palette comandi di Visual Studio Code «MS SQL: Aggiungi associazione SQL (anteprima).

Per altre informazioni, vedere Creare le Funzioni di Azure con l'estensione Associazioni SQL per Visual Studio Code tramite la tavolozza comandi.

Codice generato per funzioni di Azure con associazioni SQL

Il codice generato per la funzione di Azure con binding di input SQL:

using System;
using System.Collections.Generic;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.Extensions.Logging;

namespace Company.Function
{
    public static class dboEmployees
    {
        // Visit https://aka.ms/sqlbindingsinput to learn how to use this input binding
    [FunctionName("dboEmployees")]
        public static IActionResult Run(
            [HttpTrigger(AuthorizationLevel.Function, "get", Route = null)] HttpRequest req,
            [Sql("SELECT * FROM [dbo].[Employees]",
            CommandType = System.Data.CommandType.Text,
            ConnectionStringSetting = "SqlConnectionString")] IEnumerable<Object> result,
            ILogger log)
        {
            log.LogInformation("C# HTTP trigger with SQL Input Binding function processed a request.");

            return new OkObjectResult(result);
        }
    }
}

Il codice generato per la funzione di Azure con binding di output SQL:

using System;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.Extensions.Logging;

namespace Company.Function
{
    public static class dboEmployees
    {
        // Visit [https://aka.ms/sqlbindingsoutput] to learn how to use this output binding
        [FunctionName("dboEmployees")]
        public static CreatedResult Run(
            [HttpTrigger(AuthorizationLevel.Function, "get", Route = "addtodoitem")] HttpRequest req,
            [Sql("[dbo].[Test2]", ConnectionStringSetting = "NewSQLConnectionString")] out ToDoItem output,
            ILogger log)
        {
            log.LogInformation("C# HTTP trigger with SQL Output Binding function processed a request.");

            output = new ToDoItem
            {
                Id = "1",
                Priority = 1,
                Description = "Hello World"
            };

            return new CreatedResult($"/api/addtodoitem", output);
        }
    }

    public class ToDoItem
    {
        public string Id { get; set; }
        public int Priority { get; set; }
        public string Description { get; set; }
    }
}