2015-08-28 201 views
0

我知道这可能看起来是一个重复的问题,但以前的问题无法解决我的问题。
我用这段代码恢复了我创建的备份。恢复数据库备份的错误

public string conrestore = "Data Source=.;Integrated Security=True"; 

private void btn_restore_Click(object sender, EventArgs e) 
    { 

     SqlConnection.ClearAllPools(); 

     using (SqlConnection con = new SqlConnection(conrestore)) 
     { 
      ServerConnection srvconn = new ServerConnection(con); 


      Server srvr = new Server(srvconn); 

      if (srvr != null) 
      { 
       try 
       { 
        Restore restoredb = new Restore(); 

        restoredb.Action = RestoreActionType.Database; 

        restoredb.Database = "3LStoreDB"; 

        OpenFileDialog openfd = new OpenFileDialog(); 

        openfd.Filter = "Backup File (*.Bak)|*.Bak"; 

        Nullable<bool> result = Convert.ToBoolean(openfd.ShowDialog()); 

        if (result == true) 
        { 
         BackupDeviceItem bkDevice = new BackupDeviceItem(openfd.FileName, DeviceType.File); 

         restoredb.Devices.Add(bkDevice); 

         restoredb.ReplaceDatabase = true; 

         restoredb.SqlRestore(srvr); 

         MessageBox.Show("Restored successfully."); 

        } 
       } 
       catch(Exception ex) 
       { 
        MessageBox.Show(ex.Message); 
       } 
      } 
     } 
    } 

它可以正常工作,直到行

restoredb.SqlRestore(srvr); 

它显示错误Restore failed for server 'Server Name'

我不知道有什么不对的代码,我会很感激的任何帮助。

回答

0

这太棒了,我不知道为什么会发生这种情况。但我登出了窗户,并再次登录,现在它正常工作。