Het probleem is hier
sqlRestore.RelocateFiles.Add(new RelocateFile(databaseName, dataFileLocation));
sqlRestore.RelocateFiles.Add(new RelocateFile(databaseName + "_log", logFileLocation));
hier betekent databaseName de naam van de database die is opgegeven in het db-back-upbestand. Maar u specificeert de naam van de bestemmings-db.
Verander het in de originele db-naam
hier de voorbeeldcode om db-namen uit het back-upbestand te lezen
DataTable dtFileList = sqlRestore.ReadFileList(serverName);
string dbLogicalName = dtFileList.Rows[0][0].ToString();
string dbPhysicalName = dtFileList.Rows[0][1].ToString();
string logLogicalName = dtFileList.Rows[1][0].ToString();
string logPhysicalName = dtFileList.Rows[1][1].ToString