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:如再遇到問題,繼續更新本博客。