我最近开始了一个新的个人项目来学习实体框架。我的最终目标是制作一款桌面游戏,它使用 SQL compact 进行数据管理,并使用 Entity Framework 作为游戏对象。实际上并不知道启动 EF 有多种方法(模型优先、代码优先、数据库优先),我选择了最明显的模型优先选择。
我现在一直在成功地使用它,但是我担心一件事,尤其是后期开发。我对游戏的目标是用户可以更新到最新版本而不会丢失任何现有数据。当前的问题是所有生成脚本本质上都是破坏性的(删除所有内容然后重新创建它) - 这意味着我无法在“生产”中针对用户 SQLCE DB 运行这些脚本,因此我需要提出一个替代计划的行动。
也就是说,是否有人推荐了有关最佳实践的解决方案?在以前的桌面应用程序中,我传统上使用 XML/二进制文件来存储数据,这使我可以轻松地更新“模式”而不影响现有数据(应用程序中的版本控制根据版本定制 Load(),而 Save( ) 始终保存在最新版本中)。
关于使用 SQLCE 处理此问题有哪些建议?