Wie man ConnectionString aus EF7 DbContext

Mein Szenario:

Ich bin mit EF7 für standard-CRUD-Operationen und Dapper für komplexere Abfragen erfordern, dass der Anstieg in der Geschwindigkeit. Aus dem startup.cs ich bin Injektion meine DbContext in meine DAL welche dann nicht offensichtlich wird die Datenbank Abfragen. Dapper erfordert eine Verbindungszeichenfolge. Ich will Spritzen meine EF7 DbContext-Verbindungszeichenfolge in der Dapper-Abfrage.

Meine Frage:

Wie bekomme ich die Verbindungszeichenfolge aus der DbContext wie vor: DbContext.Database.Connection?

Wechselte er von Database zu DatabaseFacade Typ EF7, und mit, dass DbConnection Connection wurde auch entfernt.

Sicherlich sollte es eine dauerhafte Verbindung Zeichenfolge in das DbContext dass ich Abfragen kann?

Meiner Forschung:

Die Methode, die ich verwende im moment ist, und es funktioniert:

public partial class CustomContext : DbContext
{
    public readonly string _connectionString;

    public CustomContext (DbContextOptions options)
        : base(options)
    {
            _connectionString = ((SqlServerOptionsExtension)options.Extensions.First()).ConnectionString;
    }
}

Ich weiß, das ist noch in der beta, aber bin ich etwas fehlt?

Vielen Dank für Ihre Zeit.

  • FYI ich bin mit der beta7 von EF7.
  • Anmerkung: sollten Sie mithilfe der .FromSql(Abfrage) und .AsNoTracking () - Methoden zu verbessern-und EF-s-Abfrage Geschwindigkeit, so dass Sie nicht brauchen, Dapper + EF in einem Projekt.
  • Sie führen mich direkt. Dies funktioniert für mich.ctor: öffentliche DbContext(DbContextOptions<DbContext - > Optionen) : base(options) { this.Datenbank = new DatabaseFacade(this); }
InformationsquelleAutor Nick De Beer | 2015-10-14
Schreibe einen Kommentar