PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Posso attivare un evento sul database di connessione in Entity Framework Core?

Dovresti essere in grado di farlo passando una connessione nel tuo DbContext e agganciando StateChange event:(Per favore perdona l'esempio SQLite. So che hai detto PostgreSQL.)

var connection = new SqliteConnection(connectionString);
_connection.StateChange += (sender, e) =>
{
    if (e.OriginalState != ConnectionState.Open)
        return;

    var senderConnection = (DbConnection)sender;

    using (var command = senderConnection.CreateCommand())
    {
        command.Connection = senderConnection;
        command.CommandText = "-- TODO: Put little SQL command here.";

        command.ExecuteNonQuery();
    }
};

optionsBuilder.UseSqlite(connection);