SignalR 是一個(gè)用于實(shí)時(shí) web 應(yīng)用程序的庫(kù),可以在客戶端和服務(wù)器之間實(shí)現(xiàn)實(shí)時(shí)通信。在 C# 中使用 SignalR 有以下幾個(gè)步驟:
引用 SignalR 庫(kù):首先需要通過(guò) NuGet 包管理器引用 SignalR 庫(kù)??梢栽?Visual Studio 中右擊項(xiàng)目 -> 管理 NuGet 程序包 -> 搜索 SignalR 并安裝。
創(chuàng)建 SignalR Hub:創(chuàng)建一個(gè)繼承自 Hub 類的 SignalR Hub 類。這個(gè)類將包含客戶端和服務(wù)器之間的通信邏輯。
using Microsoft.AspNet.SignalR;
public class MyHub : Hub
{
public void Send(string message)
{
Clients.All.broadcastMessage(message);
}
}
using Microsoft.Owin;
using Owin;
[assembly: OwinStartup(typeof(MyApp.Startup))]
namespace MyApp
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.MapSignalR();
}
}
}
<script src="path/to/jquery.js"></script>
<script src="path/to/jquery.signalR.js"></script>
<script>
var connection = $.hubConnection();
var hubProxy = connection.createHubProxy('myHub');
hubProxy.on('broadcastMessage', function(message) {
console.log(message);
});
connection.start().done(function () {
hubProxy.invoke('send', 'Hello, SignalR!');
});
</script>
這樣就可以在 C# 中使用 SignalR 實(shí)現(xiàn)實(shí)時(shí)通信功能。