使用Signalr的優缺點是什麼 | signalr缺點
當然,除非你需要它所提供,這是說,一個簡單的,複式的Web服務層專注於JavaScript客戶端,你不應該使用SignalR。如果您是全新的ASP.NET,那可能不是您將立即需要的東西-在開始編寫複雜的,數據驅動的JavaScript應用程序之前,您還有很多其他東西需要學習。如果你只是要使用.NET客戶端,那麼堅持使用WCF:它更加靈活,並且它的靜態類型更適合於C#和VB.NET。也就是說,當你在做需要一個基於.NET的web服務後端的JavaScript應用程序時,SignalR是一個不錯的選擇。它比WindowsCommunicationFoundation配置簡單得多,對於JavaScript應用程...
當然,除非你需要它所提供,這是說,一個簡單的,複式的Web服務層專注於JavaScript客戶端,你不應該使用SignalR。如果您是全新的ASP.NET,那可能不是您將立即需要的東西 - 在開始編寫複雜的,數據驅動的JavaScript應用程序之前,您還有很多其他東西需要學習。如果你只是要使用.NET客戶端,那麼堅持使用WCF:它更加靈活,並且它的靜態類型更適合於C#和VB.NET。
也就是說,當你在做需要一個基於.NET的web服務後端的JavaScript應用程序時,SignalR是一個不錯的選擇。它比Windows Communication Foundation配置簡單得多,對於JavaScript應用程序,它具有更好的功能。它似乎是由微軟贊助的(他們允許它坐在微軟的.AspNet命名空間中),負責它的人似乎很聰明,而且工作非常努力(如果時間有點匆忙)。我曾經在午夜報告了一個錯誤,在15分鐘內做出了迴應,並且在我早上起牀時得到了修復。當然,它是開源的,他們願意考慮拉取請求,所以如果你需要修復某些東西,那麼與微軟以前的閉源模型相比,你會有更好的運氣。
它唯一真正的缺點是它非常新 - 它最近達到1.0 RC1狀態 - 因此缺少一些很好的功能,並且仍然有一些錯誤(當然這些錯誤最終會得到修復)。
下面是一個它如何還是有點新的例子。如果你試圖序列化複雜的對象圖,那麼你幾乎肯定會碰到的一個問題是,它使用Json.NET的專有格式來進行對象引用,所以最終會出現很多像這樣的JSON:
{ "$id": "57", "Name": "_default", "User": { "$id": "58", "UserTag": "ken", "Sessions": [{ "$id": "59", "SessionId": "0ca7474e-273c-4eb2-a0c1-1eba2f1a711c", "User": { "$ref": "58" }, "Room": { "$ref":...