Per convenzione, la classe DbContext legge la stringa di connessione dalla sezione ConnectionStrings del file di configurazione laddove la chiave della sezione corrisponda al nome della classe che eredita da DbContext. Ad esempio, se la classe che eredita da DbContext si chiama MyContext, automaticamente viene cercata nella sezione ConnectionString la stringa di connessione con chiave MyContext così come mostrato in questo esempio.
<connectionStrings> <add key="MyContext" value="..."> </connectionStrings>
Sebbene questo meccanismo sia comodo nella maggior parte dei casi, ci sono dei casi in cui abbiamo la necessità di recuperare la stringa di connessione a run time. In questi casi, dobbiamo creare un nuovo costruttore nella classe MyContext. Questo costruttore accetta in input la stringa di connessione e a sua volta chiama il costruttore base passando la stringa. Nel nostro codice non dobbiamo fare altro che recuperare la stringa di connessione (dal file di configurazione, da un servizio o altro ancora) e passarla al nuovo costruttore.
public class MyContext : DbContext
{
public MyContext(string connectionString) : base(connectionString)
{
}
}
...
var connectionString = GetConnectionString();
var myContext = new DbContext(connectionString);Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Mischiare codice server side e client side in una query LINQ con Entity Framework
Integrare modelli AI in un workflow di GitHub
Effettuare la ricerca di testo nascosto in una pagina web con Javascript
Abilitare automaticamente il force push di un gruppo su Azure DevOps
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Utilizzare AbortController per cancellare operazioni asincrone in JavaScript
Integrare LLM alle nostre applicazioni in .NET con MCP
Gestione opzioni colonna nella Blazor QuickGrid
Impostare la content-visibility in CSS per ottimizare il rendering iniziale di una pagina
Definire il metodo di rilascio in .NET Aspire
Ospitare n8n su Azure App Service
Configurare automaticamente un webhook in Azure DevOps


