public void ProcessRequest (HttpContext context) {
// Add some sort of validation if need be
var id = context.Request.QueryString["ImageID"]))
// Pull your data here based on that information
var dataObject = GetDataObject(id);
context.Response.ContentType = "image/png"; // or the applicable mime content type
context.Response.BinaryWrite((byte[])dataObject[0]["ImageFile"]);
}
2条答案
按热度按时间vltsax251#
我相信filestream列类型与binary列非常相似,只是SQL Server将其存储在文件系统上,而不是存储在实际的SQL数据库文件中。在任何情况下,您都需要使用某种中间组件来读取二进制数据并将内容作为响应输出。
一种方法是使用一个HTTPHandler,向它传递一些数据,用来标识要拉取的记录:
这是一个简短的示例,您需要确保您具有提取DataTable或DataReader或其他内容的逻辑。此示例假定您具有DataTable。如果使用Reader,则需要添加读取行的逻辑。
你最后会这样称呼这个图像:
乔希
qrjkbowd2#
你可以写一个页面:
Response.ContentType
Response.BinaryWrite
或类似命令写入这些二进制数据您可以通过阅读以下文章获得一些关键点的信息:Creating Thumbnail Images on the fly with ASP.Net
**编辑:**下面是专门针对FILESTREAM的一些示例: