Negli script precedenti ci siamo occupati del file appsettings.json, che contiene le impostazioni del progetto ASP.NET Core, e abbiamo visto come referenziarlo e recuperarne il contenuto all'interno dei vari controller.
Se guardiamo con attenzione il contenuto di startup.cs, però, possiamo notare che questo file non è l'unico che viene aggiunto per default alla configurazione:
public Startup(IHostingEnvironment env) { var builder = new ConfigurationBuilder() .SetBasePath(env.ContentRootPath) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) // file di configurazione per environment .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true) .AddEnvironmentVariables(); Configuration = builder.Build(); }
Come possiamo notare dal codice in alto, infatti, è prevista la possibilità di includere anche dei file aggiuntivi, denominati appsettings.[nomeAmbiente].json, che contengano impostazioni specifiche per l'ambiente di deploy. Per capire come utilizzare questa funzionalità, riprendiamo l'esempio di questo script:
https://www.aspitalia.com/script/1233/Leggere-Tipi-Nativi-Appsettings.json-ASP.NET-Core.aspx
In esso avevamo definito un appsettings.json come il seguente:
{ "Logging": { "IncludeScopes": false, "LogLevel": { "Default": "Debug", "System": "Information", "Microsoft": "Information" } }, "GeneralSettings": { "SiteName": "Sito di prova" } }
Se vogliamo gestire delle impostazioni per l'ambiente di Staging, per esempio, non dobbiamo far altro che creare un file appsettings.staging.json e inserirle al suo interno. Non è necessario includere tutto, ma possiamo limitarci alle sole differenze.
{ "GeneralSettings": { "SiteName": "Sito di prova - staging" } }
A questo punto non resta che l'ultimo passaggio, ossia impostare in fase di esecuzione l'ambiente che vogliamo utilizzare. Il modo più semplice per farlo è dalle proprietà del progetto ASP.NET MVC, nella scheda Debug:
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Usare il colore CSS per migliorare lo stile della pagina
Ottenere un token di accesso per una GitHub App
Definire stili a livello di libreria in Angular
Applicare un filtro per recuperare alcune issue di GitHub
Generare un hash con SHA-3 in .NET
Supportare lo HierarchyID di Sql Server in Entity Framework 8
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Generare la software bill of material (SBOM) in GitHub
Registrare servizi multipli tramite chiavi in ASP.NET Core 8
Gestire domini wildcard in Azure Container Apps
Utilizzare gRPC su App Service di Azure