У меня есть C# приложение WPF, которое время от времени должно выполнять резервное копирование локальной базы данных. Я делаю это, используя следующий код:
//Initialise the backup
Microsoft.SqlServer.Management.Smo.Backup backUp = new Microsoft.SqlServer.Management.Smo.Backup();
backUp.BackupSetName = "File location";
backUp.Devices.AddDevice("File location", DeviceType.File);
backUp.Database = "Database name";
backUp.Incremental = false;
backUp.Initialize = true;
backUp.Action = BackupActionType.Database;
backUp.PercentComplete += new PercentCompleteEventHandler(OnBackupUpdate);
//Back up the database
backUp.SqlBackup(Server);
Я использую приложение на Windows XP, Windows 7 и Windows 8 в течение многих лет и никогда не сталкивался с проблемой. Однако недавно я начал использовать его в Windows 10, а иногда (примерно в 5% случаев, но это чистая оценка) начинается резервное копирование, и через 10 минут в журналах ошибок моего приложения регистрируется следующая ошибка.
28/01/2020 12:46:32 BackupDatabase -> Calling BackupDatabaseSMO
28/01/2020 12:56:32 The wait operation timed out
28/01/2020 12:56:32 Win32 Error: 258 -->
28/01/2020 12:56:32 Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
28/01/2020 12:56:32 SQL error number = -2 --> SQL server = (local)\MyServer --> SQL state = 0 --> Error code = -2146232060 --> SQL Error: System.Data.SqlClient.SqlError: Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding. -->
28/01/2020 12:56:32 An exception occurred while executing a Transact-SQL statement or batch.
28/01/2020 12:56:32 Unknown exception
28/01/2020 12:56:32 Backup failed for Server 'MyPC\MyAccount'.
28/01/2020 12:56:32 Unknown exception
28/01/2020 12:56:32 Failed to backup the database 'LocalWpfDb' on server 'MyPC\MyAccount'. The following message was returned: The wait operation timed out
Это только начало происходить, теперь я перешел на Windows 10, и это происходит только в некоторых случаях. Кто-нибудь знает какие-либо вероятные объяснения этому, и есть ли параметр, который я могу изменить на P C или в приложении, чтобы предотвратить это?