我的情况:EF 4.3,SQL Compact 4 的私有(private)安装,.Net FW 4,c# winform
问题:应用程序部署后,不可避免的变更请求要求我在 SQL 压缩数据库的唯一表中创建一个新字段。在应用程序安装期间,SQL 压缩数据库被放置在用户的应用程序数据文件夹中,以便可以成功写入。我更新了程序并重新部署,但发生了以下行为:
- 卸载旧版本的应用程序不会卸载用户应用程序数据文件夹中的 SQL 压缩数据库
- 安装应用程序的更新版本不会覆盖用户应用程序中的旧 SQL Compact 数据库。
由于没有复制带有添加列的新数据库,因此当用户运行它时,它会破坏应用程序。我的研究表明我应该使用“自动 EF 迁移”来解决我的问题。在我的情况下,我理想的策略是快速检查数据库表并在必要时添加缺失的列。
我首先使用 EF 数据库。我很难找到一个适合我的情况和我想要解决这个问题的策略的好例子。
任何帮助将不胜感激! :-)
最佳答案
我认为 EF 迁移与您的问题没有任何关系。根据this ,如果您逐步按照 ClickOnce 教程进行操作,它应该会起作用。正如该 SO 答案所建议的那样,您应该检查 this page .祝你好运!
关于sql - 使用已部署的 SQL 紧凑型数据库进行 Entity Framework 迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11266364/