我习惯于使用 Ruby/Rails 和 ActiveRecord 框架。这个框架的优点之一是定义数据库模式的迁移策略。这意味着旧版本的数据库始终可以自动升级。
但是现在使用 .NET 我正在寻找一种文件格式来存储项目的用户数据。XML 是显而易见的选择,而 .NET 到 XML 的序列化是微不足道的。然而,随着项目的老化,可能需要更改序列化策略。字段可能需要重命名或移动或更改其类型。
用例是程序的新版本必须加载项目文件的旧版本,这可能会自动发生,可能会向用户显示正在加载的文件将发生迁移的消息。
是否有现有的 .NET 序列化框架可以处理通用模式版本控制和迁移,还是我必须从头开始?