c# - C# 将侦听器附加到 Npgsql 连接
问题描述
我正在用 C# 构建一个应用程序,它使用 npgsql 连接在 postgres 数据库中进行查询。我想知道是否有办法在查询执行的所有步骤中得到通知;我的意思是我想接收消息:
- "open" : 连接打开时
- "connecting" : 连接时
- "executing" : 连接执行时
- "close" : 当查询被执行并且连接关闭时
有没有办法做到这一点 ?
解决方案
您是否要捕获StateChange
事件?希望这将为您指明正确的方向。
Dim csb = New NpgsqlConnectionStringBuilder(GetConnectionString(connectionName))
csb.CommandTimeout = 0
Using connection = New NpgsqlConnection(csb.ConnectionString)
AddHandler connection.StateChange, AddressOf myHandler ' <== This is where you specify the event Handler
Using transaction = connection.BeginTransaction()
' Do your thing here.
transaction.Commit()
End Using
End Using
End Sub
' This function will get called whenever the connection state changes.
Private Function myHandler(sender As Object, e As StateChangeEventArgs) As Object
' Do something here
End Function
推荐阅读
- c++ - CMake 在所有生成的二进制文件上运行命令
- reactjs - 反应模块化 CSS
- javascript - 如果取决于 div 大小,我可以禁用 fullPage.js 吗?
- bootstrap-select - silviomoreto bootstrap-select 样式在 1.13.1 版本中被破坏
- python - 无法使用 matplotlib 为浮点数正确绘制条形图
- git - POM 的最佳发布策略
- c# - 'System.Reflection.Assembly.LoadFrom' 是否会修改本机 DLL 搜索顺序?
- batch-file - 将所有子文件夹中的 files1 重命名为 fileA
- android - 当条件为真时在后台工作
- c# - C#CheckedListBox如何操作检查数据?