使用Signalr和sqldependency在ASP.NET Core中进行数据库更改通知

时间:2019-05-30 06:13:33

标签: c# .net-core signalr sqldependency asp.net-core-signalr

如果我在SQL表行中进行了任何更改,则UI应该自动刷新新更改,而无需F5或重新加载浏览器。

我已经在asp.net mvc中尝试了此方法,并且工作正常,但是我无法在asp.net mvc核心中进行此操作。

2 个答案:

答案 0 :(得分:0)

您正在寻找一种SQL背板解决方案,到目前为止,该github isssue在core下不被支持。

阅读该问题以获取更多详细信息。但是他们建议使用documentation中支持的Redis背板。

答案 1 :(得分:0)

您可以使用SqlDependency类检测更改,然后使用SignalR将其广播到注册的客户端。我使用Core *之前的SignalR编写了一个示例,该示例可从https://weblogs.asp.net/ricardoperes/broadcasting-database-changes-through-signalr获得。为了使其与ASP.NET Core SignalR一起使用,您需要使用服务定位器(HttpContext.RequestServices.GetService>)检索集线器。另外,您必须对客户端代码进行更改。