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
Recuperare le subissue e il loro stato di completamento in GitHub
Abilitare il rolling update su Azure Functions flex consumption
Scrivere selettori CSS più semplici ed efficienti con :is()
Ridurre il reflow cambiando il CSS
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
Mappare una complex property di una entity su un campo JSON
Autenticazione di git tramite Microsoft Entra ID in Azure DevOps
Importare un servizio esterno in .NET Aspire
.NET Aspire per applicazioni distribuite
Testare il failover sulle region in Azure Storage
Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
Implementare il throttle in JavaScript
I più letti di oggi
- Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
- Alleggerire le applicazioni WPF sfruttando gli oggetti Freezable
- Esaminare documenti XML con namespace utilizzando LINQ to XML
- Sfruttare una CDN con i bundle di ASP.NET
- Effetto turnstile su tutte le pagine con il Windows Phone Toolkit
- Le DirectInk API nella Universal Windows Platform
- Gli oggetti CallOut di Expression Blend 4.0


