代码之家  ›  专栏  ›  技术社区  ›  scripni

发送二进制数据问题

  •  1
  • scripni  · 技术社区  · 14 年前

    我正在尝试通过ASP.NET页从数据库发送二进制数据。我可以看到属性数据。长度是2400,也就是2400字节,对吗? 奇怪的是,当我收到这个数据的大小是~4kb,似乎已经损坏。你知道问题出在哪里吗?

    byte[] data = proxy.getData(id);
    Response.Clear();
    Response.AddHeader("Content-Disposition", "attachment; filename=data.bin");
    Response.AddHeader("Content-Length", data.Length.ToString());
    Response.ContentType = "application/octet-stream";
    Response.Write(data);
    Response.Flush();
    
    1 回复  |  直到 14 年前
        1
  •  2
  •   Rob    14 年前

    只有4个响应重载。写入:

    public void Write(char ch);
    public void Write(object obj);
    public void Write(string s);
    public void Write(char[] buffer, int index, int count);
    

    我怀疑,根据你的密码( Response.Write(data) ),你称之为 object obj 超载。你试过:

    Response.BinaryWrite(data);