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
Eseguire script pre e post esecuzione di un workflow di GitHub
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
Recuperare l'ultima versione di una release di GitHub
Collegare applicazioni server e client con .NET Aspire
Creare gruppi di client per Event Grid MQTT
Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
Eliminare una project wiki di Azure DevOps
Generare velocemente pagine CRUD in Blazor con QuickGrid
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Effettuare il refresh dei dati di una QuickGrid di Blazor
Creare una libreria CSS universale: Immagini
Autenticarsi in modo sicuro su Azure tramite GitHub Actions