SignalR中使用LitJason IP連接問題

string ServerURI = "http://localhost:8735/";

客戶端連接用 127.0.0.1 或者192.168.1.21 都連接不上。

解決方案: 把localhost改爲 *    --> string ServerURI = "http://*:8735/";

 

1.SignalR數據回調,收到數據之後,需要反序列化成類對象。 但是在這個過程中,Int? 類型的轉換,以及其他類型的轉換都會出現問題。

後面去Git上把最新的LitJson替換到項目中,可空類型的轉換問題解決。同時又出現了其他問題:

Type System.Object can't act as an array   at LitJson.JsonMapper.ReadValue (System.Type inst_type, LitJson.JsonReader reader) JsonMapper.cs:394

2. 在上一個問題解決後,DecodeMessage數據爲空,最後都變成NonHub Message。

在Hub回調處,接收不到信息。

對比之前能正常接收回調的代碼,發現增加以下代碼之後,數據獲取正常:

3.數據獲取正常之後,在幾個類型轉換的地方又出現問題:

 Can't assign value '2068.00928' (type System.Double) to type System.Single   at JsonMapper.cs:381

double轉float失敗。後續發現JsonMapper中,提供了RegisterImporter。手動添加轉換方法後,轉換成功。

至此,數據反序列化成功。

//Todo:如再遇到問題,繼續更新本博客。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章