All'interno della dashboard di .NET Aspire, oltre ad importare servizi e configurare le nostre applicazioni, è anche possibile impostare dei comandi personalizzati per ogni tipo di risorsa visualizzata. Lo scopo è permettere un controllo esterno all'ecosistema, attraverso dei pulsanti nella dashboard, in grado di eseguire operazioni che richiederebbero altrimenti un intervento umano molto più dispendioso.
Un esempio può essere l'inizializzazione di un database, il reset della cache o azioni composite, che permettano quindi di reimpostare lo stato di partenza senza però riavviare il processo.
var cache = builder.AddRedis("cache")
.WithHttpCommand("admin-flush", "Flush Cache",
commandName: "cache-flush",
commandOptions: new HttpCommandOptions
{
Method = HttpMethod.Delete,
Description = "Clear all cached data"
});Lo stesso processo può essere chiamato da altri comandi, creando un comando composito che può eseguire un vasto numero di operazioni.
var api = builder.AddProject<Projects.Api>("api")
.WithReference(cache)
.WithCommand("reset-all", "Reset Everything", async (context, ct) =>
{
// servizio aspire
var commandService = context.ServiceProvider.GetRequiredService<ResourceCommandService>();
try
{
// chiamata al comando configurato precedentemente
var flushResult = await commandService.ExecuteCommandAsync(cache.Resource, "cache-flush", ct);
// [..altre chiamate]
if (!flushResult.Success)
{
return CommandResults.Failure($"System reset failed");
}
return CommandResults.Success();
}
catch (Exception ex)
{
return CommandResults.Failure(ex);
}
},
displayDescription: "Reset cache",
iconName: "ArrowClockwise");Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Ospitare n8n su Azure App Service
Blue/Green Release in locale con .NET Aspire
Keynote .NET Conference Italia 2025
Utilizzare ExecuteUpdate per aggiornare colonne JSON in Entity Framework
Configuratione e utilizzo .NET Aspire CLI
Gestire il ciclo di vita di AbortController in Javascript
Esporre un server MCP con Azure API Management
Integrare OpenTelemetry direttamente in Azure Monitor
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Self-healing degli unit test con Copilot in GitHub
Gestire pubblicazione Kubernetes tramite .NET Aspire
Ciclo di vita risorse con .NET Aspire


