天天看點

Json序列化

最近在學習fyireporting的源碼,參考fyireporting的報表對象定義,結合自己在工作中開發報表的應用場景,自己設計了一套報表對象定義,實作在報表設計器中報表對象的修改,通過序列化成json對象來達到存儲報表對象,相對于fyireporting報表直接對報表定義的xml操作省去編寫大量直接解析xml文檔的方法,可能會帶來點效率損失。本文主要目的在總結自己在序列化對象的時候對類資訊标記常用用法,不在于對fyireporting做過多探讨。首先自己寫的json序列化操作的類:

對json的序列化和反序列化,需要添加對using system.runtime.serialization程式集的引用。

報表對象的粗略類圖展示如下:

報表定義對象包含的主要對象reportdefine主要組成如圖所示,大緻反應一個報表對象主要包含的新資訊,該對象基本包含類關系的比較複雜關系(多态的序列化标記和數組序列化标記等),對json序列化具體實作不明白可參看後面附上的demo.正如前面所說,這篇随筆為友善自己用到json序列化的時候有忘記的時候,提供自己複習參考,在此也提供給有需要的園友們參考,沒有啥高深地方可以學習。在此,附上供大家參考。

  下次用時間給大家附上關于fyireporting的表達式引擎的分析的文章和簡單demo供有興趣的園友學習學習。