Member 12857358 Ответов: 1

Не удалось загрузить pdf в ASP.NET с#


статьи строки = запрос.QueryString ["Статья"];
> Если (ст.Длина > 6)
> {
> string pdfpath = "D:\\Document\\Клиент\ \ DWG\\" +
& gt; статья.Подстрока(0, 6) + "\\" + Статья +". pdf";
> string path = pdfpath;
> WebClient client = новый WebClient();
> Byte[] buffer = клиент.DownloadData(путь);
> if (buffer != null)
> {
& gt; ответ.ContentType = " приложение / pdf";
& gt; ответ.AddHeader ("content-length",
& gt; буфер.Длина.Метод toString());
& gt; ответ.BinaryWrite(буфер);
> }
> }

Что я уже пробовал:

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

1 Ответов

Рейтинг:
0

Dave Kreskowiak

Посмотрите на путь, по которому ваш код получает PDF-файлы. На сервере диск D: не будет существовать. Вы совершили ошибку, жестко закодировав путь к PDF-файлам вместо того, чтобы использовать относительный путь.

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

На веб-сервере ваш код выполняется в песочнице под ограниченной учетной записью. Он будет иметь доступ только к папке, в которой находится приложение, и к любым подпапкам под ней. Он не будет иметь доступа ни к каким другим папкам на сервере, ни к каким сетевым общим ресурсам/дискам.