C# 类的数据结构兼容性
1 回答
动漫人物
TA贡献1815条经验 获得超10个赞
首先说这是一个好问题。
所有项目维护中都会涉及到后续升级对用户数据造成的影响,且这个问题是不可避免的,只能尽可能的去减小它所带来的一系列问题。
就题主的情况来看,其实比较好解决,主要注意两点:
1、尽可能的不要在升级后修改旧版本字段类型。举个例子,比如旧版本有个实体类“员工”,有属性“性别”,本来是一个Boolean类型,如果你在新版本中把它改成的String类型,这就势必造成类型转换错误。
2、实体类需尽可能的向前兼容。因为随着系统不断升级,可能你的实体类属性会不断的扩展,那么你只需要还按照旧版本的存储的数据来构造实体类,新扩展的属性赋值成一个默认值即可。所以这里建议序列化的时候用XML、Json等形式来存储,如果为了安全性考虑,可以在构造完XML、Json字串之后以二进制流或加密方式写入。
- 1 回答
- 0 关注
- 731 浏览
添加回答
举报
0/150
提交
取消