Не удалось найти часть пути


Я получаю ошибку "не удалось найти часть пути" при копировании файла с сервера на локальную машину. вот мой пример кода:

 try
            {
                string serverfile = @"E:installer.msi";
                string localFile = Path.GetTempPath();
                FileInfo fileInfo = new FileInfo(serverfile);
                fileInfo.CopyTo(localFile);
                return true;
            }
            catch (Exception ex)
            {
                return false;

            }
Может ли кто-нибудь сказать мне, что не так с моим кодом?
2 3

2 ответа:

Path.GetTempPath

Возвращает вам путь к папке. вам также нужно указать путь к файлу. Вы можете сделать это так

string tempPath = Path.GetTempPath();
string serverfile = @"E:\installer.msi";
string path = Path.Combine(tempPath, Path.GetFileName(serverfile));
File.Copy(serverfile, path); //you can use the overload to specify do you want to overwrite or not

Вы должны скопировать файл в файл, а не файл в каталог:

...
  string serverfile = @"E:\installer.msi";
  string localFile = Path.GetTempPath();
  FileInfo fileInfo = new FileInfo(serverfile);

  // Copy to localFile (which is TempPath) + installer.msi
  fileInfo.CopyTo(Path.Combine(localFile, Path.GetFileName(serverfile)));
...