Esercitazione su .NET - Il tuo primo microservizio

Crea il servizio

Nel prompt dei comandi eseguire questo comando per creare l'app:

Nel terminale eseguire questi comandi per creare l'app:

Command prompt
dotnet new webapi -o MyMicroservice --no-https

Passare quindi alla nuova directory creata dal comando precedente:

Command prompt
cd MyMicroservice

Cosa significano questi comandi?

Il comando dotnet crea una nuova applicazione di tipo webapi ,ovvero un endpoint dell'API REST.

  • Il parametro -o crea una directory denominata MyMicroservice in cui è archiviata la tua app.
  • Il flag --no-https crea un'app che verrà eseguita senza un certificato HTTPS, per semplificare la distribuzione.

Il comando cd MyMicroservice ti consente di passare alla directory dell'app appena creata.

Il codice generato

Nella directory MyMicroservice sono stati creati diversi file per fornire un servizio semplice pronto per l'esecuzione, inclusi i seguenti file:

  • Program.cs è il file del punto di ingresso e include tutte le impostazioni e configurazioni caricate all'avvio dell'app. Inoltre, contiene il codice per una semplice API che fornisce le previsioni meteo per i prossimi cinque giorni. Avvia anche l'applicazione.
  • MyMycroservice.http è utilizzato per testare i progetti ASP.NET Core.
  • MyMicroservice.csproj specifica la versione di .NET a cui l'applicazione fa riferimento, le librerie utilizzate dal progetto, e altro ancora.
  • Il file launchSettings.json all'interno della directory Properties definisce impostazioni del profilo diverse per l'ambiente di sviluppo locale. Un numero di porta compreso tra 5000 e 5300 viene assegnato automaticamente al momento della creazione del progetto e salvato in questo file.

Il codice seguente mostra il contenuto del file Program.cs:

Program.cs
var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();

var app = builder.Build();

// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
    app.UseSwagger();
    app.UseSwaggerUI();
}

var summaries = new[]
{
    "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"
};

app.MapGet("/weatherforecast", () =>
{
    var forecast =  Enumerable.Range(1, 5).Select(index =>
        new WeatherForecast
        (
            DateOnly.FromDateTime(DateTime.Now.AddDays(index)),
            Random.Shared.Next(-20, 55),
            summaries[Random.Shared.Next(summaries.Length)]
        ))
        .ToArray();
    return forecast;
})
.WithName("GetWeatherForecast")
.WithOpenApi();

app.Run();

record WeatherForecast(DateOnly Date, int TemperatureC, string? Summary)
{
    public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
}

Seleziona il pulsante Continua qui sotto per procedere al passaggio successivo.

Si è verificato un errore?

Se si riceve un messaggio simile a Impossibile creare il modello "API Web ASP.NET Core". Non è stato possibile creare il modello. Dettagli: l'accesso al percorso 'C:\Windows\System32\MyMicroservice' è stato negato, modificare la directory corrente in una directory in cui si dispone delle autorizzazioni per creare una nuova cartella e provare a eseguire di nuovo il comando.

Se Windows non riesce a trovare l'SDK quando si prova a creare il progetto e si è certi di aver installato l'SDK, il computer potrebbe avere un problema con la variabile di ambiente PATH. Vedere questo post su Stack Overflowper istruzioni su come diagnosticare e risolvere il problema.

Se non riesci a risolvere il problema riscontrato, seleziona il pulsante Si è verificato un problema di seguito seguente per ricevere assistenza.

Continua