我靠着SignalR。我如何编写一个简单的应用程序,以便用户可以使用Hub实时查看服务器时间。每隔1秒,服务器将从服务器向连接的客户端发送时间如何使用SignalR制作服务器时间应用程序
回答
您可以在使用线程时执行此操作。
例集中器类:
public class ServerTime : Hub
{
public void Start()
{
Thread thread = new Thread(Write);
thread.Start();
}
public void Write()
{
while (true)
{
Clients.settime(DateTime.Now.ToString());
Thread.Sleep(1000);
}
}
}
示例脚本:
<script type="text/javascript">
$(document).ready(function() {
var time = $.connection.serverTime;
$("#btnTest").click(function() {
time.start();
});
time.settime = function (t) {
$("#Time").html(t);
};
$.connection.hub.start();
});
</script>
<div id="Time"></div>
<input id="btnTest" type="button" value="Test"/>
线程将开始工作,当您单击为btnTest。 线程每秒发送一次消息给页面。
那么,如果其他用户访问此页面会发生什么?那么我们有两个线程开始? – vNext 2012-02-28 08:16:13
您不需要启动两个线程。因为它会在线程第一次启动时发送ServerTime所有连接的用户。开始线程一次就足够了。 – sinanakyazici 2012-02-28 08:55:24
我对signalR也是新手。我尝试了上面的确切代码的示例,但我仍然收到以下错误: “SignalR:连接必须在数据可以发送之前启动,请在.send()之前调用.start()。 我的参考资料都是正确的。我很难过! – Dkong 2012-03-02 08:00:21
创建一个监听器,并引发一个事件时,通知被添加:)因此,你就不必不断地检查数据库:)
在Global.asax中在Application_Start(object sender, EventArgs e)
方法创建一个后台线程并启动它。在该线程,你需要这样做是为了让你的集线器访问:
IConnectionManager connectionManager = AspNetHost.DependencyResolver
.Resolve<IConnectionManager>();
dynamic clients = connectionManager.GetClients<ServerTime>();
clients.settime(DateTime.UtcNow.ToString());
NB DateTime.UtcNow
几乎总是可取的,因为它不围绕每年两次飞跃。
- 1. 如何使用PHP制作服务器应用程序
- 2. UWP应用程序可以充当SignalR服务器吗?
- 3. 无服务器应用程序 - 如何
- 4. 应用程序服务器工作
- 5. 从应用程序服务器根服务GWT应用程序
- 6. 如何从外部应用程序(不使用SignalR)启动SignalR集线器
- 7. 日期时间格式时,应用程序作为Windows服务
- 8. WCF服务应用程序定时器
- 9. 应用程序服务器
- 10. 如何同步我的应用程序和服务器之间的时间?
- 11. 我如何开始使用API SearchConsole(服务器到服务器应用程序)?
- 12. AngularJS与signalR服务不起作用的服务器调用
- 13. 在Java应用程序中调度任务时如何使用NTP服务器?
- 14. 我应该如何为Android应用程序制作服务器端软件?
- 15. 如何使无服务器应用程序的反应路由器工作?
- 16. 如何制作自助服务终端应用程序iPhone
- 17. 何时使用Mongrel作为Rails应用程序的Web服务器?
- 18. 如何使用jprofiler9来分析java服务器应用程序?
- 19. 如何使用eclipse IDE配置jboss应用程序服务器?
- 20. 如何使用tomcat服务器验证android应用程序?
- 21. 如何使用Java应用程序服务器
- 22. 如何使用webpack dev服务器部署Webpack应用程序?
- 23. 如何在每个时间限制使用url ping服务器
- 24. Rails 3应用程序服务器启动时间很长
- 25. 在客户端 - 服务器应用程序中处理时间
- 26. 获取NTP - 服务器的时间从Android应用程序
- 27. 在GAE应用程序上更改服务器时间
- 28. 如何使用JSP/Servlets应用程序在特定时间运行服务?
- 29. 使用Navision应用程序服务器创建Navision服务?
- 30. 使用Jetty作为Java EE应用程序服务器
你有什么具体问题吗?你写了什么吗? – nmat 2012-02-24 10:42:47