我刚开始使用 SQL-CLR 创建一个非常基本的触发器......但是当我这样做的时候另一个问题“弹出”.. 无论如何,实际上是否有一个 SQL 触发器来触发 Web 应用程序中的一个方法?.. 我的第一个想法是拥有一个 Web 服务,该服务将位于 SQL-CLR 随后调用的 Web 应用程序中。 整个想法是,一旦触发器被“触发”..它会调用一个 SignalR-hub,然后提醒客户端数据库中发生了一些事情.. 整个事情对我来说更具实验性.. 我不能使用网络服务方式的原因是每次触发器被“触发”时都需要额外的请求
最佳答案
不要从触发器进行 HTTP 调用。引入这种耦合会降低性能、降低可用性、增加延迟并使系统极其脆弱(HTTP 故障会导致触发器故障,从而导致事务失败)。
而是将 HTTP 调用与触发器分离。在触发器中将调用请求放在 queue 中并让 HTTP 请求从监视队列的外部进程完成。
监控数据库变化的系统已经存在,Query Notification用于实时更改和 Change Tracking对于断开连接的系统。
关于asp.net - Web 应用程序中的 CLR 触发器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11792720/