复制数据库

时间:2011-03-21 18:45:11

标签: c#

我已将我的数据库添加到我的源文件夹中,每当我启动程序时,它都会在我的Debug文件夹中复制db,但修改似乎不会复制回源文件夹中的旧数据库。

我该如何自动完成?

2 个答案:

答案 0 :(得分:2)

由于在应用程序死亡时没有调用“执行后”脚本并且您返回到Visual Studio(我假设您正在讨论的情况),您可以创建一个预构建脚本来检查数据库是否存在在DEBUG文件夹中比源更新,然后在建筑物之前将其复制回来。

通过这种方式,您将获得更改,尽管您将成为一个版本。

更好的解决方案是检查数据库是否未复制到输出文件夹,并使用绝对路径而不是相对路径引用它。这样,您将始终对您的实时数据库起作用。 (我假设你使用的是SQL Express)

答案 1 :(得分:1)

三种方式:

  1. 在Pre-Build事件中放置一个XCopy命令(project-> Properties-> Build Events)。但是这只会在每次构建时执行,而不是在程序运行后执行。

  2. 向程序添加代码,以便将数据库“备份”到您在App.config中指定的路径,该路径是您的源文件夹。

  3. 从.bat文件启动程序,该程序将数据库复制回程序退出时的任何位置。