Mi sembra di aver perso qualcosa di ovvio.
Voglio testare il mio DbContext
EF Core in LinqPad come faccio di solito con EF normale.
Ho un semplice DbContext
:
public class NotificationManagerContext : DbContext
{
public virtual DbSet<Notification> Notifications { get; set; }
}
L'ho registrato su LinqPad usando il nuovo driver EF Core 2.0.1:
In un'app MCV Core avrei registrato EF e il driver SQL nel generatore di app e gli avrei passato una stringa di connessione. Non vedo come fare la stessa configurazione in LinqPad?
In Linqpad non è in esecuzione alcuna infrastruttura di iniezione delle dipendenze. Quindi, se si desidera utilizzare un contesto, è possibile aggiungere un costruttore che accetta una stringa di connessione. È possibile memorizzare la stringa di connessione in una variabile membro â € "ad esempio, _connString
â €" e nel OnConfiguring
del contesto fare
if (!string.IsNullOrWhiteSpace(_connString))
{
optionsBuilder.UseSqlServer(_connString);
}
Ciò ti dà tutta la libertà di giocare con le connessioni al database senza dover lasciare Linqpad.