2011-05-20 50 views
0

我有一個小的C#WPF應用程序做跑斷了SQL Express 2008 R2的DB一些簡單的計算,並在設定部分是運行代碼備份按鈕數據庫備份在調試運行,但不會釋放

   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 

我已確認有在應用程序這一點上沒有其他打開的數據庫連接,備份運行在調試正常,但一旦我編譯版本(從VS運行或作爲獨立的)我得到的錯誤:

操作系統錯誤32「32(無法檢索此錯誤的文本原因15105)」BACKUP DATABASE正在異常終止。

我該如何解決這個問題,最好不必在每臺機器上安裝Sql Management Studio並連接數據庫?推薦的備份方式是什麼?它爲什麼在Debug中工作,但不是Release。

非常感謝

回答

1

我不好......原來VS改變了DataContext的連接字符串DTZConnectionString1並提出另一個設置文件。現在我正在使用正確的連接字符串,它工作正常。

不知道爲什麼不正確的工作在調試但不釋放。