Delen via


Azure Functions maken met de SQL Bindings-extensie voor Visual Studio Code

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics-

Azure Functions-ondersteuning voor SQL-bindingen is beschikbaar in preview voor invoer- en uitvoerbindingen. Met SQL-bindingen kunt u eenvoudiger een Azure SQL-database of SQL Server-database verbinden met Azure Functions. De SQL Bindings-extensie voor Visual Studio Code vereenvoudigt het proces van het ontwikkelen van Azure Functions met SQL-bindingen en wordt automatisch geïnstalleerd met de MSSQL-extensie voor Visual Studio Code-extensiepakket .

In dit artikel wordt beschreven hoe de SQL Bindings-extensie voor Visual Studio Code kan worden gebruikt om Azure Functions te maken met SQL-bindingen.

Notitie

Momenteel ondersteunt de SQL Bindings-extensie alleen C# Azure Functions. JavaScript en Python Azure Functions bieden ondersteuning voor SQL-bindingen, maar worden momenteel niet ondersteund door de SQL Bindings-extensie.

Vanuit de objectverkenner

Als u een Azure-functie wilt maken op basis van een specifieke tabel of weergave in Objectverkenner, klikt u met de rechtermuisknop op een tabel of weergave vanaf een verbonden server in SQL Server Object Explorer en selecteert u Azure-functie maken met SQL-binding.

Opdracht Tabelobjectverkenner:

Schermopname van het contextmenu van objectverkenner om een SQL-binding toe te voegen vanuit tabel.

Objectverkenner-opdracht bekijken:

Schermopname van het contextmenu van objectverkenner om een SQL-binding toe te voegen vanuit weergave.

Zie Azure Functions maken met de SQL Bindings-extensie voor Visual Studio Code via objectverkenner voor meer informatie.

Vanuit de opdrachtpalet

Als u een nieuwe functie met een SQL-binding wilt maken, voert u de MS SQL uit: Een Azure-functie maken met de opdracht SQL Binding vanuit het opdrachtenpalet.

Schermopname van het maken van een nieuwe Azure-functie met SQL Binding met behulp van het opdrachtenpalet.

Zie Azure Functions maken met de SQL Bindings-extensie voor Visual Studio Code via het opdrachtpaletvoor meer informatie.

In een bestaande Azure-functie

Als u een SQL-binding wilt toevoegen aan een bestaande functie, opent u de Azure-functie C# in een editor. Voer vervolgens de opdracht MS SQL: SQL Binding toevoegen vanuit het opdrachtpalet uit.

Schermopname van het toevoegen van een SQL-binding aan een bestaande Azure-functie met SQL Binding met behulp van het opdrachtenpalet.

Zie Azure Functions maken met de SQL Bindings-extensie voor Visual Studio Code via het opdrachtpaletvoor meer informatie.

Gegenereerde code voor Azure-functies met SQL-bindingen

De code die is gegenereerd voor de Azure-functie met SQL-invoerbinding:

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);
        }
    }
}

De code die is gegenereerd voor de Azure-functie met SQL-uitvoerbinding:

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; }
    }
}