【问题标题】:asp.net refresh web page on DB changesasp.net 刷新网页上的数据库更改
【发布时间】:2014-09-06 20:37:23
【问题描述】:

我目前正在开发一个 asp.net 网站。 我有一个页面(main.aspx),它显示数据库表中的记录。另一个页面(editing.aspx)负责编辑DB表中的记录。

假设我们有两个用户正在使用网站的场景,user1(在 session1 上)正在查看 main.aspx 中的记录,user2(在 session2 上)正在从 editor.aspx 编辑数据库表,我想要的是:当 user2 将更改保存到 DB 表时刷新 user1 的 main.aspx。

我尝试使用 AJAX 计时器,它每 10 秒拉动一次数据库以进行更改,并刷新一个 UpdatePanel(我在其中显示记录),它工作得很好,但我想知道是否有比拉数据库服务器进行更改更好的方法。

谢谢。

【问题讨论】:

    标签: asp.net ajax database session


    【解决方案1】:

    如果另一种方式更好,则值得商榷,但您正在寻找的是与服务器的持久连接,允许服务器向页面发送电子邮件。有一个很好的 .NET 库,名为 SignalR,它抽象出了细节。当然,它的网络效率更高,但根据您的用例,更新面板可能已经足够好了。基本上,使用 SignalR,您将从编辑页面的服务器端代码发送一条消息,该消息将由您主页上的 JavaScript 函数接收。然后你要么显示数据,要么以某种方式进行刷新。

    【讨论】:

    • 谢谢,SignalR 确实是一个不错的库。但是,轮询结果是我的问题的解决方案,正如你所说(更新面板已经足够好了)
    猜你喜欢
    • 2020-05-21
    • 2012-01-08
    • 2011-10-26
    • 2023-04-03
    • 1970-01-01
    • 2013-06-12
    • 2011-09-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多