【摘要】 对 JsonConvert 的认识太肤浅了,终于还是遇到了问题考必过小编为大家整理了关于对 JsonConvert 的认识太肤浅了,终于还是遇到了问题的信息,希望可以帮助到大家!
对 JsonConvert 的认识太肤浅了,终于还是遇到了问题
标签:archsea业务stringsizeota算法playobj
一:背景1. 讲故事
在开始本文之前,真的好想做个问卷调查,到底有多少人和我一样,对 JsonConvert 的认识只局限在 SeriapzeObject 和 DeseriapzeObject 这两个方法上(┬_┬), 这样我也好结伴同行,不再孤单落魄,或许是这两个方法基本上能够解决工作中 80% 的场景,对于我来说确实是这样,但随着编码的延续,终究还是会遇到那剩下的 20% ,所以呀。。。
我的场景是这样的:前段时间写业务代码的时候,我有一个自定义的客户算法类型的Model,这个Model中有这种算法类型下的客户群以及Report统计信息,还用了 HashSet 记录了该类型下的 CustomerID集合,为了方便讲述,我把Model简化如下:
class CustomerAlgorithmModel
{
pubpc string DisplayName { get; set; }
pubpc int CustomerType { get; set; }
pubpc ReprotModel Report { get; set; }
pubpc HashSet<int> CustomerIDHash { get; set; }
}
class ReprotModel
{
pubpc int TotalCustomerCount { get; set; }
pubpc int TotalTradeCount { get; set; }
}
那有意思的就来了,我个人是有记日志的癖好,就想着以后不会出现死无对证的情况,然后就理所当然的使用 JsonConvert.SeriapzeObject, 这一下就出问题了,日志送入到了 ElasticSearch ,然后通过 Kibana 查不出来,为啥呢?看完上面的 Model 我想你也猜到了原因,json体太大了哈,好歹 CustomerIDHash 中也有几十万个撒,这一下全导出成json了,这 size 还能小吗?要不我写段代码看一看。
static void Main(string[] args)
{
var algorithModel = new CustomerAlgorithmModel()
{
CustomerType = 1,
DisplayName = "
对 JsonConvert 的认识太肤浅了,终于还是遇到了问题
标签:archsea业务stringsizeota算法playobj
以上就是对 JsonConvert 的认识太肤浅了,终于还是遇到了问题的内容,更多资讯请及时关注考必过网站,最新消息小编会第一时间发布,大家考试加油!