SqlDependency OnChange 事件未在 IIS 服务器上触发

Posted

技术标签:

【中文标题】SqlDependency OnChange 事件未在 IIS 服务器上触发【英文标题】:SqlDependency OnChange Event not firing on IIS Server 【发布时间】:2020-05-30 12:29:05 【问题描述】:

在 IIS 服务器上发布和部署该工具时,SqlDenpendency.OnChange 事件未触发。

它在我的本地机器上运行良好。

我已经参考了这个答案https://***.com/a/38917421/6763912

【问题讨论】:

在 IIS 中您可以尝试启用匿名身份验证并查看它是否有效。对我来说似乎是权限问题。 @vinothvs 匿名身份验证已启用,但仍然是同样的问题。 我已经提到了这个答案(***.com/a/38917421/6763912)。虽然对于SqlDependency.StopSqlDependency.Start,我把它们放在了 Globals.asax 它现在对你有用吗? @vinothvs 还没有 【参考方案1】:

要找到根本原因,我们需要挖掘异常。首先,请检查您的事件查看器。

如果 .net 运行时抛出任何异常,您会发现它。如果在事件查看器中没有发现异常。这可能是第一次机会例外。然后你需要用调试诊断收集来收集转储文件并用WINDBG分析转储文件。

How to use the Debug Diagnostics Tool

Debug Diagnostic Tool

【讨论】:

以上是关于SqlDependency OnChange 事件未在 IIS 服务器上触发的主要内容,如果未能解决你的问题,请参考以下文章

SqlDependency类的使用

UI线程上的.NET引发事件[重复]

SQL Server 通知 - 我的 OnChange 没有触发

如何从 SQL Server 内存中清除 SqlDependency?

使用SqlDependency实时监听SQL server数据库变化并执行事件

在作为 Windows 服务托管的 WCF 类库项目中使用 SqlDependency