> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Iniziare su Square Cloud con C#

> Scopri come iniziare su Square Cloud con C#

## 🚀 Introduzione

* Prima di iniziare, assicurati che .NET (Dotnet) sia installato sul tuo sistema. Se non lo hai ancora, puoi scaricarlo dal [sito ufficiale di Dotnet](https://dotnet.microsoft.com/en-us/download).
* Successivamente, dovrai creare un account su Square Cloud, cosa che puoi fare tramite la [pagina di accesso](https://squarecloud.app/it/signup). Puoi usare la tua email, GitHub o entrambi per creare l'account.
* Infine, devi avere un piano a pagamento attivo sul tuo account. Puoi visualizzare i nostri piani e acquistarne uno in base alle tue esigenze [qui](https://squarecloud.app/it/pricing).

## ⚙️ Configurazione del file squarecloud.app

<Note>
  Se stai caricando la tua applicazione tramite il sito web di Square Cloud, puoi ignorare questa sezione. Il sito crea automaticamente il file di configurazione `squarecloud.app` per te.
</Note>

<Card title="Scopri di più: come creare il file di configurazione per Square Cloud." icon="link" href="https://docs.squarecloud.app/it/getting-started/config-file">
  Il file squarecloud.app è un file di configurazione che verrà utilizzato per
  configurare la tua applicazione; servirà a definire il nome, la descrizione,
  la versione, il file principale, tra le altre cose.
</Card>

## 📄 File richiesti

* **project/project.csproj** (Esempio di file principale).
  <Note>Nell'esempio sopra, il file principale dell'applicazione si trova all'interno di una cartella. Se anche il tuo file di configurazione si trova all'interno di una cartella, devi definire il percorso nel campo `MAIN`, ad esempio: `MAIN=folder/file.csproj`</Note>
* [squarecloud.app](https://docs.squarecloud.app/it/getting-started/config-file) (file contenente la configurazione di Square Cloud).

## ▶️ Come avviare la tua applicazione

* Se il campo `START` non è definito nel file di configurazione, Square Cloud utilizzerà per impostazione predefinita il processo `restore & run` per avviare la tua applicazione. Se il campo `START` è definito, il valore in esso contenuto verrà eseguito direttamente. Per maggiori informazioni sui parametri del file di configurazione, visita [parametri di configurazione](https://docs.squarecloud.app/it/getting-started/config-file#configuration-parameters).

* Square Cloud usa `dotnet restore` per ripristinare le dipendenze del progetto e `dotnet run --project MAIN` per compilare ed eseguire il progetto specificato in `MAIN`.

## 🖥️ Preparare il progetto

Prima di ospitare il tuo progetto su Square Cloud, verifica innanzitutto se i file del progetto sono configurati correttamente per l'hosting.

<Warning>Il file di configurazione (`squarecloud.app/.config`) deve trovarsi nella radice del file zip. Altrimenti, Square Cloud non sarà in grado di trovarlo durante il deploy.</Warning>

## 📤 Come ospitare il tuo progetto

Ora che hai preparato tutti i file per il tuo progetto C#, il passo successivo è caricarli su Square Cloud e mettere online la tua applicazione. Esistono diversi modi per caricare, ma ne tratteremo due: tramite Dashboard o tramite CLI.

### Tramite dashboard

<Steps>
  <Step title="Accedi alla pagina di upload">
    Accedi alla [pagina di upload](https://squarecloud.app/it/dashboard/new) e carica il file zip del tuo progetto.
  </Step>

  <Step title="Configura il tuo ambiente">
    Dopo aver caricato il tuo zip, dovrai configurare il nome, il file principale o il runtime environment e altre impostazioni per il tuo progetto.\
    Se stai caricando un progetto web, assicurati di selezionare "Web Publication" e di impostare un sottodominio per il tuo progetto.
  </Step>

  <Step title="Esegui il deploy del tuo progetto">
    Infine, clicca sul pulsante "Deploy" per ospitare il tuo progetto su Square Cloud.\
    Dopo il deploy, puoi monitorare lo stato e i log del tuo progetto dalla dashboard.

    <Frame>
      <img src="https://cdn.squarecloud.app/docs/articles/dashboard/uploading.gif" alt="Caricamento dell'applicazione su Square Cloud" style={{ borderRadius: "0.2rem" }} />
    </Frame>
  </Step>
</Steps>

### Tramite CLI

Per utilizzare questo metodo, devi creare un file di configurazione chiamato `squarecloud.app` nella directory principale del tuo progetto. Questo file conterrà la configurazione necessaria per il tuo progetto.

<Card title="Scopri di più su: come creare il file di configurazione per Square Cloud." icon="link" href="/it/getting-started/config-file">
  Il file squarecloud.app è un file di configurazione che verrà utilizzato per configurare la tua applicazione; verrà usato per definire il tuo ambiente.
</Card>

<Steps>
  <Step title="Installa la CLI">
    Per prima cosa, devi avere la CLI installata nel tuo ambiente. Se non la hai ancora, esegui il seguente comando nel tuo terminale:

    ```
    npm install -g @squarecloud/cli
    ```

    Se la hai già, ti consigliamo di aggiornarla. Per farlo, esegui il seguente comando nel tuo terminale:

    <Tabs>
      <Tab title="Windows">
        ```bash theme={null}
        squarecloud update
        ```
      </Tab>

      <Tab title="Linux, macOS e WSL">
        ```bash theme={null}
        curl -fsSL https://cli.squarecloud.app/install | bash
        ```
      </Tab>
    </Tabs>
  </Step>

  <Step title="Autenticati">
    Ora, per autenticarti e utilizzare gli altri comandi della CLI, troverai la tua chiave di autorizzazione [qui](https://squarecloud.app/it/account/security) cliccando su "Request API Key". Dopo aver ottenuto la tua chiave di autorizzazione, esegui il seguente comando:

    ```bash theme={null}
    squarecloud auth login
    ```
  </Step>

  <Step title="Carica il tuo progetto">
    Infine, per eseguire il deploy della tua applicazione su Square Cloud tramite la CLI, devi eseguire il seguente comando:

    ```bash theme={null}
    squarecloud upload 
    ```

    Oppure, se hai creato lo zip manualmente, puoi usare:

    ```bash theme={null}
    squarecloud upload --file <path/to/zip> 
    ```
  </Step>
</Steps>

## Contattaci

Se continui a riscontrare **difficoltà tecniche**, il nostro **team di supporto specializzato** è disponibile ad assisterti. [**Contattaci**](https://squarecloud.app/it/support) e saremo felici di aiutarti a risolvere qualsiasi problema.
