[C#] JSON 按照 Property Name 排序輸出 JSON (效能測試)

2022-02-24

上一篇文章 物件輸出的 JSON 按照 Property Name 排序的兩種方法 ,其中提供兩種方法來做到排序物件後 JSON輸出

這時候我同事問我要採用哪一種,其實我也不知道,反正文章都寫了範例程式稍微小改一下,直接測速吧



因為只是測試,所以相關文章請去參考 物件輸出的 JSON 按照 Property Name 排序的兩種方法 ,然後我各跑一千萬次

跑五輪測試成績

直接上程式碼


結果

第 1輪千萬測試
沒有排序:00:00:12.3518069
透過 JObject:00:00:55.8608258
透過 ExpandoObject:00:00:21.5615376


第 2輪千萬測試
沒有排序:00:00:11.2667876
透過 JObject:00:00:54.4216864
透過 ExpandoObject:00:00:21.9325571


第 3輪千萬測試
沒有排序:00:00:11.3775666
透過 JObject:00:00:54.4805545
透過 ExpandoObject:00:00:20.6154214


第 4輪千萬測試
沒有排序:00:00:11.1592938
透過 JObject:00:00:58.7714687
透過 ExpandoObject:00:00:23.1765868


第 5輪千萬測試
沒有排序:00:00:12.4622190
透過 JObject:00:01:03.9443235
透過 ExpandoObject:00:00:21.9992367


簡單結論

如果你在寫 class 的時候 按照字母排列,直接輸出效率一定最好,再來就是 ExpandoObject  ,最後是轉 JObject 進行排序


當麻許的超技八 2014 | Donma Hsu Design.