有没有什么地方可以“挂钩”?创建 SQL Server 连接?
这是一个漫长的过程,但是有什么方法可以让我的一些代码在每次在我的应用程序中创建 SqlConnection
时运行?我想不出在连接创建时触发的 Ado.net 事件,但我可能错过了一个。
(否则我将不得不将其添加到数据访问层中的少量代码路径中,并希望将其添加到任何新创建的代码路径中。)
This is a long shot, but is there any way to get some of my code to run every time a SqlConnection
is created in my application? I can’t think of Ado.net events that are fired on connection creation, but I may have missed one.
(Otherwise I will have to add this to a small number of code paths in our data access layer and hope it get added to any newly created code paths.)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
也许您有一个连接工厂,所有请求都路由到此代码,因此您可以在此处添加代码,或者通过重写 SqlConnection 构造函数并隐藏默认构造函数。
Probably you have a connection factory that all your requests route to this code so you can add your code here, or by overriding SqlConnection constructor and hiding default constructor.
SqlConnection
类上有一个StateChange
事件,您可以挂钩该事件,以便在其状态更改(从close
到open)时收到通知
或返回)。查看 相关 MSDN 文档 了解详细信息。
There is a
StateChange
event on theSqlConnection
class that you can hook into to be notified when its state changes (fromclosed
toopen
or back).Check out the relevant MSDN docs for details.