binarywrite()方法是如何工作的
本文关键字:工作 何工作 方法 binarywrite | 更新日期: 2023-09-27 18:11:45
我从.ashx文件中获得了以下代码行:
public void ProcessRequest (HttpContext context)
{
string hstr = @"Data Source=SUMAN-PC'SQLEXPRESS;Initial Catalog=school;Integrated Security=True";
SqlConnection con = new SqlConnection(hstr);
string ms = context.Request.QueryString["id_image"].ToString();
con.Open();
SqlCommand cmd = new SqlCommand("select img from class where classid=" + ms, con);
SqlDataReader dr = cmd.ExecuteReader();
dr.Read();
context.Response.BinaryWrite((Byte[])dr[0]);
context.Response.End();
}
经过一番研究,我发现
" BinaryWrite方法将特定的数据发送到当前HTTP输出没有任何字符转换。"
这是什么意思?它如何将数据发送到http输出?HTTP输出在哪里?
在这种情况下,context.Response
是一个流,表示正在发送到发出http请求的客户端(很可能是web浏览器)的数据。Context.Response
是由ASP"引擎"在幕后自动提供给您的。你写入流的任何内容最终都会被发送到浏览器。
通用http处理程序自动提供一个名为Context
的HttpContext实例。HttpContext包含两个名为Request和Response的属性,它们允许您访问通用处理程序正在处理的请求和相应的响应。处理程序应该做任何它需要做的处理,并通过将它的应答写入响应流来发送结果。