1

我正在尝试将 PDF 下载到要附加到 MailMessage 的内存流中。这是我的代码:

string pdfUrl = "http://dev.domain.com/pdf+files/sample.pdf";
WebClient client = null;
MemoryStream stream;
try
{
    client = new WebClient();
    stream = new MemoryStream(client.DownloadData(pdfUrl));
    attachments.Add(new Attachment(stream, "Sample.pdf");
}
finally
{
    client.Dispose();
}

从 client.DownloadData(pdfUrl) 返回的 byte[] 长度为 0。

有任何想法吗?

4

1 回答 1

0

下载可以从 Web 浏览器工作但以编程方式尝试时失败的原因有很多。这些原因包括:缺少 cookie(包括身份验证令牌)、不匹配的方法(POST 与 GET)、缺少表单字段、不同的 HTTP 标头、重定向问题等。

查看此屏幕抓取问题目录,了解有关如何解决的更多信息。

如果我不得不猜测您的情况出了什么问题,我会猜测缺少 cookie 或 HTTP 标头。

于 2012-04-08T21:43:16.220 回答