我靠着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. SignalR 1.0alpha2控制檯服務器應用程序
- 3. 如何使用Windows Form應用程序將QueryString值傳遞給SignalR服務器
- 4. UWP應用程序可以充當SignalR服務器嗎?
- 5. 無服務器應用程序 - 如何
- 6. 應用程序服務器工作
- 7. 從應用程序服務器根服務GWT應用程序
- 8. 日期時間格式時,應用程序作爲Windows服務
- 9. 何時適合使用應用程序服務器?
- 10. 何時使用Java EE應用程序服務器?
- 11. Azure web應用程序緩慢服務器響應時間
- 12. WCF服務應用程序定時器
- 13. 從ios應用程序的遠程服務器獲取時間
- 14. 使用SignalR時Azure服務總線或只是Azure Web應用程序
- 15. 應用程序服務器
- 16. 如何從外部應用程序(不使用SignalR)啓動SignalR集線器
- 17. 如何在java web應用程序中使用http服務器和應用程序服務器
- 18. 我如何開始使用API SearchConsole(服務器到服務器應用程序)?
- 19. 如何同步我的應用程序和服務器之間的時間?
- 20. iOS應用程序的iCloud服務器空間限制
- 21. 在Java應用程序中調度任務時如何使用NTP服務器?
- 22. 如何從服務器調用SignalR集線器操作
- 23. 如何使無服務器應用程序的反應路由器工作?
- 24. 如何在WPF瀏覽器上獲取服務器時間應用程序?
- 25. 如何製作自助服務終端應用程序iPhone
- 26. AngularJS與signalR服務不起作用的服務器調用
- 27. 應用程序的響應時間與交易服務器時間
- 28. 何時使用Mongrel作爲Rails應用程序的Web服務器?
- 29. 在應用程序服務器之間同步服務狀態
- 30. 如何使用Java應用程序服務器
你有什麼具體問題嗎?你寫了什麼嗎? – nmat 2012-02-24 10:42:47