加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET Profiles版本控制?

发布时间:2020-12-16 03:51:32 所属栏目:asp.Net 来源:网络整理
导读:ASP.NET配置文件如何处理版本控制?我知道,因为数据是序列化的,这可能是一个问题,而不是表. 它会引发某种序列化错误吗? 示例:我将v1对象存储到配置文件.我使用新的v2版本更新我的Web应用程序,但数据库仍包含v1对象. 当我尝试将v1对象反序列化为v2对象时会
ASP.NET配置文件如何处理版本控制?我知道,因为数据是序列化的,这可能是一个问题,而不是表.

它会引发某种序列化错误吗?

示例:我将v1对象存储到配置文件.我使用新的v2版本更新我的Web应用程序,但数据库仍包含v1对象.

当我尝试将v1对象反序列化为v2对象时会发生什么?这个问题的最佳解决方案是什么?

解决方法

通常,ASP.NET将配置文件数据视为属性包 – 因此它可能会跳过属性(已存储在数据存储中)但从配置中删除.同样,对于新添加的属性,它将使用默认值.现在,属性类型也很重要 – 如果属性类型是您的自定义类,那么它的序列化将由XmlSerializer或BinaryFormatter处理. XmlSerializer是一个默认值,它通常是一个容忍的序列化程序(将跳过缺少的属性等).您可以使用属性来控制xml序列化.对于BinaryFormatter,它与运行时序列化相同,如果您希望支持版本控制,最好是实现ISerializable并处理任何版本问题.我不确定在您具有某种类型A的配置文件属性然后删除该类型的情况下会发生什么.我的猜测是你应该得到一个错误,但我不是因为它而已.

我通常喜欢汇总我自己的实现以支持用户配置文件功能,因为

>可以根据自己的喜好控制版本等等>选择商店和存储架构可以是独立的(这是可能的在ASP.NET配置文件中自定义简介提供者)>它可以轻松放入分层应用和配置文件数据也适用于任何非网络客户如果需要>虽然这意味着重新发明了轮子,并有一些额外的努力,它适用于任何有软件的软件保质期超过2 – 3年.>我可以准确控制何时存储/检索来自的配置文件数据数据存储.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读