我已经看到一些问题,人们似乎在为自己找到这个问题,所以我会自己问一下。
我有一个PDF,用户需要填写并签名,签署后,用户点击提交并将pdf发布到ASHX页面。我在页面上做的第一件事是:
public void ProcessRequest (HttpContext context) {
if (context.Request.Files.Count <= 0)
{
context.Response.Write("Error");
}
每次运行时条件都会失败并且&#34;错误&#34;是写的。
解决方案
感谢Joel的回答,我找到了答案。 PDF将作为System.IO.Stream发送到页面。使用:
Stream fs = context.Request.InputStream
我能够捕获PDF。这是我用来将PDF读入字节数组的最终代码。
`public void ProcessRequest(HttpContext context)
{
using (Stream fs = context.Request.InputStream)
{
long len = fs.Length;
try
{
using (BinaryReader br = new BinaryReader(fs))
{
byte[] bytes = br.ReadBytes((int)len);
//Rest of Code`
答案 0 :(得分:0)
Acrobat或Reader提交的PDF是PDF的ASCII表示形式。您只需要将提交内容写入磁盘即可。