使用c#和SMO还原数据库时发生异常

使用c#和SMO还原数据库时发生异常,c#,wpf,restore,smo,C#,Wpf,Restore,Smo,我是一名大学生,我为该项目创建了备份和恢复功能。我成功地使用SMO创建了备份功能。但是我在恢复功能方面有一些问题。存在异常(图像中给出了异常) 这是我要还原的代码 static string DATABASENAME = "adora"; static string SEVERNAME = "localhost"; static string CONNECTIONSTRING = "Server=" + SEVERNAME +";Database=

我是一名大学生,我为该项目创建了备份和恢复功能。我成功地使用SMO创建了备份功能。但是我在恢复功能方面有一些问题。存在异常(图像中给出了异常)
这是我要还原的代码

        static string DATABASENAME = "adora";
        static string SEVERNAME = "localhost";
        static string CONNECTIONSTRING = "Server=" + SEVERNAME +";Database="+ DATABASENAME + ";Trusted_Connection=True;";

 public void RestoreDatabase(String filePath, String dataFilePath, String logFilePath)
        {
            Restore sqlRestore = new Restore();

            BackupDeviceItem deviceItem = new BackupDeviceItem(filePath, DeviceType.File);
            sqlRestore.Devices.Add(deviceItem);
            sqlRestore.Database = DATABASENAMERE;

            using (SqlConnection connectionx = new SqlConnection(CONNECTIONSTRINGRE))
            {
                connectionx.Open();
                // Do work here; connection closed on following line.
                ServerConnection connection = new ServerConnection(connectionx);
                Server sqlServer = new Server(connection);

                Database db = sqlServer.Databases[DATABASENAMERE];
                sqlRestore.Action = RestoreActionType.Database;
                String dataFileLocation = dataFilePath + DATABASENAMERE + ".mdf";
                String logFileLocation = logFilePath + DATABASENAMERE + "_Log.ldf";
                db = sqlServer.Databases[DATABASENAMERE];
                RelocateFile rf = new RelocateFile(DATABASENAMERE, dataFileLocation);

                sqlRestore.RelocateFiles.Add(new RelocateFile(DATABASENAMERE, dataFileLocation));
                sqlRestore.RelocateFiles.Add(new RelocateFile(DATABASENAMERE + "_log", logFileLocation));
                sqlRestore.ReplaceDatabase = true;
                //sqlRestore.Complete += new ServerMessageEventHandler(sqlRestore_Complete);
                sqlRestore.PercentCompleteNotification = 10;
               // sqlRestore.PercentComplete += new PercentCompleteEventHandler(sqlRestore_PercentComplete);

                sqlRestore.SqlRestore(sqlServer);
                db = sqlServer.Databases[DATABASENAMERE];
                db.SetOnline();

                sqlServer.Refresh();

            }
        }

是的,我读过。但是我想不出一个办法来解决这个问题。我尝试将数据库名称更改为master。但这对我不起作用提示:这是你的连接。我试了很多次。但我不知道是什么错了。请帮我做这个