基于DataTable, Json的额外序列化数据
Posted tiancaiKG
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于DataTable, Json的额外序列化数据相关的知识,希望对你有一定的参考价值。
最近很多功能都涉及到用户设置相关的东西, 比如一个沙盘, 希望在无操作后3秒钟就自动进行相机自动旋转的操作, 代码很简单:
public class XXX : MonoBehaviour { public float cameraRotateSpeed = 2f; public float waitTime = 3f; private float m_startRunningTime = 0.0f; void Awake(){ ResetStartRunningTime(); } private void ResetStartRunningTime() { m_startRunningTime = Time.realtimeSinceStartup + waitTime; } private void Update() { if(Time.realtimeSinceStartup > m_startRunningTime) { var rotateAngle = cameraRotateSpeed * Time.deltaTime; // ... } } }
可是用户如果想自己能设置这个功能的变量时, 我们可以怎么做呢?
1. 搞个快捷键? 各种功能都有用户需求的话, 快捷键没那么多. 几十个快捷键没人能记住.
2. 做个网页后台进行设置, 然后运行时从远程获取变量? 太麻烦, 而且依赖后台, 而且还是异步的.
3. 在本地写个json文件配置表从里面读取? 对开发不友好, 维护麻烦.
4. 做个UI面板运行时打开进行设置? 也是过于麻烦. 并且也需要存储数据.
并且对于一个已经开发到一定程度的工程来说, 额外添加的这个需求不能在开发层面要求过多, 且不能影响原有功能的设计.
其实就是没有什么好办法,
以上是关于基于DataTable, Json的额外序列化数据的主要内容,如果未能解决你的问题,请参考以下文章
JSON.NET:如何在没有数组的情况下从DataTable对象中仅序列化一行?
求问 C#如何将json字符串转为datatable 求详细解答
为啥 JSON.NET 以这种格式在我的 DataTable 中输出 DateTime 值?