c# - 在 Asp.net MVC 应用程序中将信息传递给客户端而不刷新页面

标签 c# asp.net-mvc asynchronous real-time

今天我们已经看到一些网站在不刷新页面的情况下将数据或通知传递给客户端。命名的实时或交互式应用程序。

一些已知的网站是:

  1. Stackoverflow : 通知
  2. Freelancer : 以数字格式异步传递项目和专业计数
  3. Google Mail : 计​​算用户的邮件内存使用总量。

等等......

我尝试并搜索了一些工具,例如 SignalR .基本上 SignalR专为创建聊天应用程序而设计。但是有没有微软技术没有任何扩展的直接方式来达到我们的目的呢?例如,假设我们想要一个像 freelancer 这样的简单计数器。 ,除了使用 SignalR 这样的扩展名,我们别无选择吗? ?

最佳答案

您可以查看一种称为轮询的技术(当不存在对其他方法的支持时 SignalR 回退到该技术),基本上这个概念是每 x 秒您将向服务器检查更新(或多或少),例如(使用 jQuery):

setInterval(function() {
    $.get("/Messages/GetCount", function(data) {
        // do something with the data ...
    });
}, 30000);

每 30 秒检查一次消息计数 - 并相应地执行操作。 Here是一篇关于轮询和长轮询的好文章(它提到了一个名为 Socket.IO 的 SignalR 替代方案)。

说了这么多,我真的会选择 SignalR,那些人测试了各种极端情况、性能等。

关于c# - 在 Asp.net MVC 应用程序中将信息传递给客户端而不刷新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18426519/

相关文章:

c# - 如何附加不是来自数据库的 Entity Framework 对象?

c# - 域模型和列表/详细信息页面

asp.net-mvc - 验证检测到危险的客户端输入-从ASP.NET中的TinyMCE发布

Android:取消异步任务

c# - 仅在 asp.net FileUpload 控件的浏览按钮上应用 css

c# - 如何将基于 'using' 的 GC 生命周期打开为基于 'create-dispose' 的生命周期?

c# - 基本 GUI 事件处理问题 C#

c# - Post 方法获取空参数 ASP .NET MVC

javascript - 我的 Javascript 是否用完了 asyncIds ? (inspector_async_hook.js 中的 RangeError)

c# - 带有 BeginGetRequestStream/EndGetRequestStream 的 TaskFactory.FromAsync 挂起