最近做一个小即时通讯程序,考虑到服务资源和实际使用情况,使用的心跳包实现,结果测试时,发现发送消息到webapi后,消息对象始终为空,仔细检查了各个环节,所有问题都排查了一遍,还是没有接收到提交的消息数据。
后来反复试验之后,发现了问题:
原来接收对象里的属性全都是不可空的,而整形、guid类型的属性,也是不可空的,而每次不是所有不可空的字段属性都提交了,导致对象无法初始化!
最后把不确定会提交的属性,全部在构造函数里初始化之后,问题得到了解决!
郁闷啊,就这个问题导致,竟然也不报错!!!!!!
现在记录下来,以备参考。