Читать XML-файл с одного сервера на другой сервер в той же сети

Я разместил свое приложение на сервере с IP 12.3.4.56, и мое хранилище данных находится на другом сервере с IP 12.3.4.57 в той же сети.

Я хочу прочитать файл XML с сервера хранилища данных на сервер приложений. Когда я запускаю "\\12.3.4.57\ABC\DEF\" в командной строке, он открывает правильную папку на обоих серверах. Я дал каждому доступ на чтение и запись также на папку.

Когда я пытаюсь прочитать файл с моего сервера приложений, используя приведенный ниже код, он выдает ошибку.

string XMLFilePath = "\\12.3.4.57\ABC\DEF\dir.xml";
XmlDocument DirDoc = new XmlDocument();
DirDoc.Load(XMLFilePath);

Ошибка: имя пользователя или пароль неверны.

Та же самая ошибка произошла, когда я пытаюсь скопировать файл со своего сервера хранилища данных на сервер приложений, используя приведенный ниже код.

string sourceFile = "\\12.3.4.57\ABD\DEF\Test123 (26).pdf";
string Folder = HttpContext.Current.Server.MapPath("~/SavedPDFs");
string destPDFFile = string.Concat(Folder, "Test123 (26).pdf");
System.IO.File.Copy(sourceFile, destPDFFile, true);

1 ответ

Я полагаю, что вы забыли избежать обратной косой черты, вызвавшей проблему "разрешения".

Ваш код должен выглядеть так

string XMLFilePath = @"\\12.3.4.57\ABC\DEF\dir.xml"; // note the leading @ sign
XmlDocument DirDoc = new XmlDocument();
DirDoc.Load(XMLFilePath);


string sourceFile = @"\\12.3.4.57\ABD\DEF\Test123 (26).pdf";  // note the leading @ sign
string Folder = HttpContext.Current.Server.MapPath("~/SavedPDFs");
string destPDFFile = string.Concat(Folder, "Test123 (26).pdf"); // I assume that the Folder variable will have the frontslash at the end
System.IO.File.Copy(sourceFile, destPDFFile, true);
Другие вопросы по тегам