下载签名的pdf文件的问题c#

时间:2015-05-15 12:14:37

标签: pdf c#-4.0 signed downloading-website-files

我已经签名了pdf,Adobe签名做得很好。当我想下载此文档时,我的问题就出现了。

通过webmethod我得到签名文件的字节。直到这里没有问题。

如果我尝试将文件保存在我的服务器中,当我打开文件时,一切都是正确的。但是如果我在打开它时尝试下载它,签名就错了。

这是adobe reader中的错误:

  

"签名数据的范围由一系列意外字节定义。   详细信息:签名的字节范围无效"

这是我下载文件的方式:

HttpContext.Current.Response.ContentType = "application/pdf";
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename= Factura.pdf");
HttpContext.Current.Response.AddHeader("Content-Length", newStream.Length.ToString());
HttpContext.Current.Response.Buffer = true;
HttpContext.Current.Response.BufferOutput = true;
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.OutputStream.Write(newStream.GetBuffer(), 0, newStream.GetBuffer().Length);
HttpContext.Current.Response.OutputStream.Flush();
HttpContext.Current.ApplicationInstance.CompleteRequest();

任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

您发送的字节数多于标头中公布的字节数。执行newStream.ToArray()并仅使用字节数组。要检查的其他事项是,如果您确实拥有newStream中的所有字节,请将其保存到要检查的文件中(来自ToArray()