我的情况:EF 4.3,私人安装 SQL Compact 4,.Net FW 4,c# winform
问题:部署应用程序后,不可避免的更改要求我在 SQL 紧凑型数据库的唯一表中创建一个新字段。在应用程序安装期间,SQL compact db 被放置在用户的 Application Data 文件夹中,以便可以成功写入。我更新了程序并重新部署,但出现了以下行为:
- 卸载旧版本的应用程序不会卸载用户的应用程序数据文件夹中的 SQL compact db
- 安装应用程序的更新版本不会覆盖用户应用程序中的旧 SQL Compact 数据库。
由于带有添加列的新数据库不会被复制,因此当用户运行它时会破坏应用程序。我的研究表明我应该使用“自动 EF 迁移”来解决我的问题。在我的情况下,我想要的策略是快速检查 db 表并在必要时添加缺失的列。
我首先使用 EF 数据库。我很难找到一个适合我的情况和我想要解决这个问题的策略的好例子。
任何帮助将不胜感激!:-)