Avvio rapido: Creare una funzione in C# in Azure con Visual Studio Code

In questo articolo si usa Visual Studio Codice per creare una funzione C# che risponde alle richieste HTTP. Dopo aver testato il codice in locale, verrà distribuito nell'ambiente serverless di Funzioni di Azure. Questo articolo crea una funzione attivata HTTP eseguita in .NET 6.0. È inoltre disponibile una versione di questo articolo basata sull'interfaccia della riga di comando.

Per impostazione predefinita, questo articolo illustra come creare funzioni C# eseguite in .NET 6 nello stesso processo dell'host funzioni. Queste funzioni C# in-process sono supportate solo nelle versioni di .NET (Long Term Support) di .NET, ad esempio .NET 6. Per creare funzioni C# in .NET 6 che possono essere eseguite anche in .NET 5.0 e .NET Framework 4.8 (in anteprima) in un processo isolato, vedere la versione alternativa di questo articolo.

Le procedure illustrate in questa guida di avvio rapido comportano l'addebito di qualche centesimo (USD) o meno nell'account Azure.

Configurare l'ambiente

Prima di iniziare, verificare che siano soddisfatti i requisiti seguenti:

È anche necessario un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.

Creare il progetto locale

In questa sezione si userà Visual Studio Code per creare un progetto di Funzioni di Azure locale in C#. Più avanti in questo articolo verrà pubblicato il codice della funzione in Azure.

  1. Scegliere l'icona di Azure nella barra attività, quindi nell'area Area di lavoro (locale) selezionare il + pulsante, scegliere Crea funzione nell'elenco a discesa. Quando richiesto, scegliere Crea nuovo progetto.

    Screenshot of create a new project window.

  2. Selezionare il percorso della directory per l'area di lavoro del progetto e scegliere Seleziona. È necessario creare una nuova cartella o scegliere una cartella vuota per l'area di lavoro del progetto. Non scegliere una cartella del progetto che fa già parte di un'area di lavoro.

  3. Quando richiesto, immettere le informazioni seguenti:

    Prompt Selezione
    Selezionare una lingua Scegliere C#.
    Selezionare un runtime .NET Selezionare .NET 6.
    Selezionare un modello per la prima funzione del progetto Scegliere HTTP trigger.
    Specificare un nome di funzione Digitare HttpExample.
    Specificare uno spazio dei nomi Digitare My.Functions.
    Livello di autorizzazione Scegliere Anonymous, che consente a chiunque di chiamare l'endpoint della funzione. Per informazioni sul livello di autorizzazione, vedere Chiavi di autorizzazione.
    Specificare come aprire il progetto Selezionare Add to workspace.

    Nota

    Se non è possibile visualizzare .NET 6 come opzione di runtime, controllare quanto segue:

    • Assicurarsi di aver installato .NET 6.0 SDK.
    • Premere F1 e digitare Preferences: Open user settings, quindi cercare Azure Functions: Project Runtime e modificare la versione di runtime predefinita in ~4.
  4. Visual Studio Codice usa le informazioni fornite e genera un progetto Funzioni di Azure con un trigger HTTP. È possibile visualizzare i file di progetto locali in Explorer. Per altre informazioni sui file creati, vedere File di progetto generati.

Eseguire la funzione in locale

Visual Studio Code si integra con Azure Functions Core Tools per consentire l'esecuzione di questo progetto nel computer di sviluppo locale prima della pubblicazione in Azure.

  1. Per chiamare la funzione, premere F5 per avviare il progetto di app per le funzioni. Il pannello Terminale visualizza l'output da Strumenti di base. L'app viene avviata nel pannello Terminale. È possibile visualizzare l'endpoint dell'URL della funzione attivata da HTTP eseguita in locale.

    Screenshot of the Local function Visual Studio Code output.

    In caso di problemi con l'esecuzione in Windows, assicurarsi che il terminale predefinito per Visual Studio Code non sia impostato su WSL Bash.

  2. Con gli strumenti di base in esecuzione, passare all'area Azure: Funzioni . In Funzioni espandere Progetto locale>Funzioni. Fare clic con il pulsante destro del mouse (Windows) o CTRL - (macOS) sulla funzione HttpExample e scegliere Execute Function Now... (Esegui funzione adesso).

    Screenshot of execute function now from Visual Studio Code.

  3. Nel corpo della richiesta INVIO premere INVIO per inviare un messaggio di richiesta alla funzione.

  4. Quando la funzione viene eseguita in locale e restituisce una risposta, viene generata una notifica in Visual Studio Code. Le informazioni sull'esecuzione della funzione vengono visualizzate nel pannello Terminale .

  5. Premere CTRL+C per arrestare Core Tools e disconnettere il debugger.

Dopo aver verificato che la funzione viene eseguita correttamente nel computer locale, è necessario usare Visual Studio Codice per pubblicare il progetto direttamente in Azure.

Accedere ad Azure

Prima di potere pubblicare l'app, è necessario accedere ad Azure.

  1. Se non si è già connessi, scegliere l'icona di Azure nella barra attività. Nell'area Risorse scegliere Accedi ad Azure....

    Screenshot of the sign-in to Azure window within VS Code.

    Se si è già connessi e è possibile visualizzare le sottoscrizioni esistenti, passare alla sezione successiva. Se non si dispone ancora di un account Azure, scegliere Crea e Account Azure.... Gli studenti possono scegliere Crea e Azure for Students Account....

  2. Quando viene visualizzata la richiesta nel browser, scegliere l'account Azure e accedere con le credenziali corrispondenti. Se si crea un nuovo account, è possibile accedere dopo la creazione dell'account.

  3. Dopo avere eseguito l'accesso, è possibile chiudere la nuova finestra del browser. Le sottoscrizioni appartenenti all'account Azure vengono visualizzate nella barra laterale.

Creare l'app per le funzioni in Azure

In questa sezione viene creata un'app per le funzioni e le risorse correlate nella sottoscrizione di Azure.

  1. Scegliere l'icona di Azure nella barra attività. Nell'area Risorse selezionare quindi l'icona e scegliere l'opzione +Crea app per le funzioni in Azure .

    Create a resource in your Azure subscription

  2. Quando richiesto, immettere le informazioni seguenti:

    Prompt Selezione
    Selezionare la sottoscrizione scegliere la sottoscrizione da usare. Questa richiesta non verrà visualizzata quando si dispone di una sola sottoscrizione visibile in Risorse.
    Immettere un nome univoco globale per l'app per le funzioni digitare un nome valido in un percorso URL. Il nome digitato viene convalidato per assicurarsi che sia univoco in Funzioni di Azure.
    Selezionare uno stack di runtime Scegliere la versione della lingua in cui è stata eseguita in locale.
    Selezionare una località per le nuove risorse per prestazioni ottimali, scegliere un'area vicina.

    L'estensione mostra lo stato delle singole risorse durante la creazione in Azure nel pannello Log attività di Azure.

    Log of Azure resource creation

  3. Al termine della creazione, le risorse di Azure seguenti vengono create nella sottoscrizione. Le risorse sono denominate in base al nome dell'app per le funzioni:

    • Un gruppo di risorse, che è un contenitore logico per le risorse correlate.
    • Un account standard Archiviazione di Azure, che gestisce lo stato e altre informazioni sui progetti.
    • Un'app per le funzioni, che fornisce l'ambiente per l'esecuzione del codice della funzione. Un'app per le funzioni consente di raggruppare le funzioni come un'unità logica per semplificare la gestione, la distribuzione e la condivisione delle risorse all'interno dello stesso piano di hosting.
    • Un piano servizio app che definisce l'host sottostante per l'app per le funzioni.
    • Un'istanza dell'applicazione Insights connessa all'app per le funzioni, che tiene traccia dell'utilizzo delle funzioni nell'app.

    Dopo la creazione dell'app per le funzioni e dopo l'applicazione del pacchetto di distribuzione viene visualizzata una notifica.

    Suggerimento

    Per impostazione predefinita, le risorse di Azure richieste dall'app per le funzioni vengono create in base al nome dell'app per le funzioni specificato. Per impostazione predefinita, vengono anche creati nello stesso gruppo di risorse con l'app per le funzioni. Se si desidera personalizzare i nomi di queste risorse o riutilizzare le risorse esistenti, è necessario pubblicare il progetto con opzioni di creazione avanzate .

Distribuire il progetto in Azure

Importante

La distribuzione in un'app per le funzioni esistente sovrascrive sempre il contenuto di tale app in Azure.

  1. Scegliere l'icona di Azure nella barra attività, quindi nell'area Area di lavoro selezionare la cartella del progetto e selezionare il pulsante Distribuisci.

    Deploy project from the Visual Studio Code workspace

  2. Al termine della distribuzione, selezionare Visualizza output per visualizzare i risultati della creazione e della distribuzione, incluse le risorse di Azure create. Se non si riesce a visualizzare la notifica, selezionare l'icona della campana nell'angolo in basso a destra per visualizzarla di nuovo.

    Screenshot of the View Output window.

Eseguire la funzione in Azure

  1. Nell'area Risorse nella barra laterale espandere la sottoscrizione, la nuova app per le funzioni e Funzioni. Fare clic con il pulsante destro del mouse (Windows) o CTRL - (macOS) sulla funzione HttpExample e scegliere Execute Function Now... (Esegui funzione adesso).

    Screenshot of executing function in Azure from Visual Studio Code.

  2. In Immettere il corpo della richiesta viene visualizzato il valore { "name": "Azure" } del corpo del messaggio di richiesta. Premere INVIO per inviare il messaggio di richiesta alla funzione.

  3. Quando la funzione viene eseguita in locale e restituisce una risposta, in Visual Studio Code viene generata una notifica.

Pulire le risorse

Per continuare con il passaggio successivo e aggiungere alla funzione un'associazione alla coda di Archiviazione di Azure, sarà necessario mantenere tutte le risorse esistenti per poterle riutilizzare.

In caso contrario, seguire questa procedura per eliminare l'app per le funzioni e le risorse correlate per evitare l'addebito di costi aggiuntivi.

  1. In Visual Studio Code premere F1 per aprire il riquadro comandi. Nel riquadro comandi cercare e selezionare Azure: Open in portal.

  2. Scegliere l'app per le funzioni e premere INVIO. La pagina dell'app per le funzioni viene aperta nel portale di Azure.

  3. Nella scheda Panoramica selezionare il collegamento accanto a Gruppo di risorse.

    Screenshot of select the resource group to delete from the function app page.

  4. Nella pagina Gruppo di risorse esaminare l'elenco delle risorse incluse e verificare che siano quelle da eliminare.

  5. Nella pagina Gruppo di risorse esaminare l'elenco delle risorse incluse e verificare che siano quelle da eliminare.

  6. Selezionare Elimina gruppo di risorse e seguire le istruzioni.

    L'eliminazione potrebbe richiedere alcuni minuti. Al termine, viene visualizzata una notifica per pochi secondi. È anche possibile selezionare l'icona a forma di campana nella parte superiore della pagina per visualizzare la notifica.

Per altre informazioni sui costi delle funzioni, vedere Stima dei costi del piano di consumo.

Passaggi successivi

È stato usato Visual Studio Codice per creare un'app per le funzioni con una semplice funzione attivata da HTTP. Nell'articolo successivo si espande tale funzione connettendosi ad Azure Cosmos DB o azure Queue Archiviazione. Per altre informazioni sulla connessione ad altri servizi di Azure, vedere Aggiungere associazioni a una funzione esistente in Funzioni di Azure.