C# 在.NET中使用plupload控件

C# 在.NET中使用plupload控件,c#,jquery-plugins,file-upload,C#,Jquery Plugins,File Upload,我使用原样从网站下载了源项目,只是将目标文件从upload.php更改为upload.aspx,其中包含以下代码以接收文件数据: int chunk = Request.QueryString["chunk"] != null ? int.Parse(Request.QueryString["chunk"]) : 0; string fileName = Path.GetFileName(Request.Files[0].FileName); /

我使用原样从网站下载了源项目,只是将目标文件从upload.php更改为upload.aspx,其中包含以下代码以接收文件数据:

        int chunk = Request.QueryString["chunk"] != null ? int.Parse(Request.QueryString["chunk"]) : 0;
        string fileName = Path.GetFileName(Request.Files[0].FileName);

        // Read stream
        BinaryReader br = new BinaryReader(Request.InputStream);
        byte[] buffer = br.ReadBytes((int)br.BaseStream.Length);
        br.Close();
        //byte[] appended = buffer.Take(149).ToArray();

        // Write stream
        BinaryWriter bw = new BinaryWriter(File.Open(Server.MapPath("~/uploadfiles" + fileName), chunk == 0 ? FileMode.Create : FileMode.Append));
        bw.Write(buffer);
        bw.Close();

问题是,当我上传一个jpg文件或任何其他文件时,每个数据块都有预先添加的数据,这显然会导致文件损坏,并增加文件大小。知道为什么会发生这种情况吗?

您需要从Request.Files[0]读取,而不是从Request.InputStream读取


请参阅marco的帖子:

数据块的前面/后面是什么?