Condividi tramite


Creare un'app Avalonia con App per dispositivi mobili di Azure

Avalonia consente di creare applicazioni GUI .NET per Windows, macOS, Linux, iOS, Android e Web Assembly da una singola codebase. Questa esercitazione illustra come aggiungere un servizio back-end basato sul cloud a un'app desktop Windows Avalonia usando App per dispositivi mobili di Azure e un back-end di app per dispositivi mobili di Azure. Si creerà sia un nuovo back-end dell'app per dispositivi mobili che una semplice app elenco Todo che archivia i dati delle app in Azure.

È necessario completare questa esercitazione prima di tutte le altre esercitazioni di Avalonia sull'uso di App per dispositivi mobili di Azure.

Prerequisiti

Per completare questa esercitazione è necessario:

Anche se Avalonia supporta la compilazione in Mac o Windows, questa esercitazione presuppone l'uso di Windows e Visual Studio 2022. È consigliabile esaminare l'esercitazione di Avalonia per acquisire familiarità con il processo di sviluppo per Avalonia.

Scaricare l'app di esempio

  1. Aprire il repository azure-mobile-apps nel browser.

  2. Aprire l'elenco a discesa Codice , quindi selezionare Scarica ZIP.

    Screenshot of the Code menu on GitHub.

  3. Al termine del download, aprire la cartella Download e individuare il azure-mobile-apps-main.zip file.

  4. Fare clic con il pulsante destro del mouse sul file scaricato e scegliere Estrai tutto.

    Se si preferisce, è possibile usare PowerShell per espandere l'archivio:

    C:\Temp> Expand-Archive azure-mobile-apps-main.zip
    

Gli esempi si trovano nella cartella samples all'interno dei file estratti. L'esempio per la guida introduttiva è denominato TodoApp. È possibile aprire l'esempio in Visual Studio facendo doppio clic sul TodoApp.sln file.

Screenshot of the file explorer for the solution.

Distribuire il back-end in Azure

Nota

Se il back-end è già stato distribuito da un'altra guida introduttiva, è possibile usare lo stesso back-end e ignorare questo passaggio.

Per distribuire il servizio back-end, si:

  • Effettuare il provisioning di un servizio app Azure e di database SQL di Azure in Azure.
  • Usare Visual Studio per distribuire il codice del servizio nel servizio app Azure appena creato.

Usare l'interfaccia della riga di comando per sviluppatori di Azure per completare tutti i passaggi

L'esempio TodoApp è configurato per supportare l'interfaccia della riga di comando per sviluppatori di Azure. Per completare tutti i passaggi (provisioning e distribuzione):

  1. Installare l'interfaccia della riga di comando per sviluppatori di Azure.
  2. Aprire un terminale e passare alla cartella contenente il TodoApp.sln file. Questa directory contiene azure.yamlanche .
  3. Eseguire azd up.

Se non è già stato eseguito l'accesso ad Azure, il browser viene avviato per chiedere di eseguire l'accesso. Verrà quindi richiesto di usare una sottoscrizione e un'area di Azure. L'interfaccia della riga di comando per sviluppatori di Azure effettua quindi il provisioning delle risorse necessarie e distribuisce il codice del servizio nell'area di Azure e nella sottoscrizione desiderata. Infine, l'interfaccia della riga di comando per sviluppatori di Azure scrive un file appropriato Constants.cs .

È possibile eseguire il azd env get-values comando per visualizzare le informazioni di autenticazione SQL se si vuole accedere direttamente al database.

Se sono stati completati i passaggi con l'interfaccia della riga di comando per sviluppatori di Azure, procedere con il passaggio successivo. Se non si vuole usare l'interfaccia della riga di comando per sviluppatori di Azure, procedere con i passaggi manuali.

Creare risorse in Azure.

  1. Aprire un terminale e passare alla cartella contenente il TodoApp.sln file. Questa directory contiene azuredeploy.jsonanche .

  2. Assicurarsi di aver eseguito l'accesso e aver selezionato una sottoscrizione usando l'interfaccia della riga di comando di Azure.

  3. Creare un nuovo gruppo di risorse:

    az group create -l westus -g quickstart
    

    Questo comando crea il quickstart gruppo di risorse nell'area Stati Uniti occidentali. È possibile selezionare qualsiasi area desiderata, fornendo la possibilità di creare risorse in tale area. Assicurarsi di usare lo stesso nome e la stessa area ovunque siano menzionati in questa esercitazione.

  4. Creare le risorse usando una distribuzione di gruppo:

    az deployment group create -g quickstart --template-file azuredeploy.json --parameters sqlPassword=MyPassword1234
    

    Selezionare una password complessa per la password di SQL Amministrazione istrator. Sarà necessario in un secondo momento quando si accede al database.

  5. Al termine della distribuzione, ottenere le variabili di output perché contengono informazioni importanti necessarie in un secondo momento:

    az deployment group show -g quickstart -n azuredeploy --query properties.outputs
    

    Un output di esempio è:

    Screenshot of command line results.

  6. Prendere nota di ognuno dei valori negli output per usarli in un secondo momento.

Pubblicare il codice del servizio

Aprire in TodoApp.sln Visual Studio.

  1. Nel riquadro di destra selezionare Esplora soluzioni.

  2. Fare clic con il pulsante destro del mouse sul TodoAppService.NET6 progetto, quindi scegliere Imposta come progetto di avvio.

  3. Nel menu in alto selezionare Compila>Pubblica TodoAppService.NET6.

  4. Nella finestra Pubblica selezionare Destinazione: Azure, quindi premere Avanti.

    Screenshot of the target selection window.

  5. Selezionare Destinazione specifica: app Azure Servizio (Windows) e quindi premere Avanti.

    Screenshot of the specific target selection window.

  6. Se necessario, accedere e selezionare un nome di sottoscrizione appropriato.

  7. Verificare che View sia impostato su Gruppo di risorse.

  8. Espandere il quickstart gruppo di risorse, quindi selezionare il servizio app creato in precedenza.

    Screenshot of the app service selection window.

  9. Selezionare Fine.

  10. Al termine del processo di creazione del profilo di pubblicazione, selezionare Chiudi.

  11. Individuare le dipendenze del servizio e selezionare i tre puntini accanto al database di SQL Server, quindi selezionare Connessione.

    Screenshot showing the S Q L server configuration selection.

  12. Selezionare database SQL di Azure, quindi selezionare Avanti.

  13. Selezionare il database di avvio rapido e quindi selezionare Avanti.

    Screenshot of the database selection window.

  14. Compilare il modulo usando il nome utente e la password SQL presenti negli output della distribuzione, quindi selezionare Avanti.

    Screenshot of the database settings window.

  15. Selezionare Fine.

  16. Al termine, selezionare Chiudi .

  17. Selezionare Pubblica per pubblicare l'app nel servizio app Azure creato in precedenza.

    Screenshot showing the publish button.

  18. Dopo la pubblicazione del servizio back-end, viene aperto un browser. Aggiungere /tables/todoitem?ZUMO-API-VERSION=3.0.0 all'URL:

    Screenshot showing the browser output after the service is published.

Configurazione dell'app di esempio

L'applicazione client deve conoscere l'URL di base del back-end in modo che possa comunicare con esso.

Se è stato usato azd up per effettuare il provisioning e la distribuzione del servizio, il Constants.cs file è stato creato automaticamente ed è possibile ignorare questo passaggio.

  1. Espandere il TodoApp.Data progetto.

  2. Fare clic con il pulsante destro del mouse sul TodoApp.Data progetto, quindi scegliere Aggiungi>classe....

  3. Immettere Constants.cs come nome e quindi selezionare Aggiungi.

    Screenshot of adding the Constants.cs file to the project.

  4. Aprire il Constants.cs.example file e copiare il contenuto (CTRL-A, seguito da CTRL-C).

  5. Passare a Constants.cs, evidenziare tutto il testo (CTRL-A), quindi incollare il contenuto dal file di esempio (CTRL-V).

  6. Sostituire con https://APPSERVICENAME.azurewebsites.net l'URL back-end del servizio.

    namespace TodoApp.Data
    {
        public static class Constants
        {
            /// <summary>
            /// The base URI for the Datasync service.
            /// </summary>
            public static string ServiceUri = "https://demo-datasync-quickstart.azurewebsites.net";
        }
    }
    

    È possibile ottenere l'URL back-end del servizio dalla scheda Pubblica . Assicurarsi di usare un URL https .

  7. Salvare il file. (CTRL-S).

Compilare ed eseguire l'app di esempio

  1. In Esplora soluzioni espandere la others cartella .

  2. Fare clic con il pulsante destro del mouse sul TodoApp.AvaloniaUI progetto e scegliere Imposta come progetto di avvio.

  3. Nella barra superiore selezionare la configurazione di Qualsiasi CPU e la destinazione TodoApp.AvaloniaUI :

    Screenshot of the Visual Studio configuration bar.

  4. Premere F5 per compilare ed eseguire il progetto.

Una volta avviata l'app, verrà visualizzato un elenco vuoto con una casella di testo. È possibile:

  • Immettere un testo, quindi premere l'icona + per aggiungere l'elemento.

  • Impostare o deselezionare la casella di controllo per contrassegnare qualsiasi elemento come fatto.

  • Premere l'icona di aggiornamento per ricaricare i dati dal servizio.

    Screenshot of the Avalonia app running on Windows.

Passaggi successivi

Continuare l'esercitazione aggiungendo l'autenticazione all'app.