C# DB备份在调试中运行,但不在发布中运行
我有一个小的c#wpf应用程序,可以运行Sql Express 2008 R2 db进行一些简单的计算,在安装部分有一个运行代码的备份按钮C# DB备份在调试中运行,但不在发布中运行,c#,backup,sql-server-2008-r2,C#,Backup,Sql Server 2008 R2,我有一个小的c#wpf应用程序,可以运行Sql Express 2008 R2 db进行一些简单的计算,在安装部分有一个运行代码的备份按钮 using (DTZDataContext db = new DTZDataContext()) { db.ExecuteCommand(string.Format("BACKUP DATABASE DtzDb TO DISK = '{0}'", file
using (DTZDataContext db = new DTZDataContext())
{
db.ExecuteCommand(string.Format("BACKUP DATABASE DtzDb TO DISK = '{0}'", filename));
}
我正在使用的连接字符串是
Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\App_Data\DTZ.mdf;Integrated Security=True;User Instance=True;Database=DtzDb
我已经确认,此时应用程序中没有其他打开的db连接,并且备份在调试中运行良好,但一旦我编译发布(从VS或独立运行),我会得到错误:
操作系统错误32“32(由于此错误原因检索文本失败15105)”备份数据库异常终止
我如何解决这个问题,最好不用在每台机器上安装Sql Management Studio并连接数据库?推荐的备份方式是什么?为什么它在调试中工作而不是在发布中工作
非常感谢我的坏。。。事实证明,VS已将DataContext连接字符串更改为DTZConnectionString1,并创建了另一个设置文件。现在我使用正确的连接字符串,它工作正常 不知道为什么不正确的一个在调试中工作,但在发布时不工作