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