2010-01-06 75 views

回答

0

相信FILESTREAM列类型非常相似,一个二进制列,但SQL Server将它存储在文件系统而不是实际的SQL数据库文件中。在任何情况下,您都需要使用某种中间组件来读取二进制数据并输出内容作为响应。要做到这一点

的方法之一是使用的HttpHandler到你传递一些数据,你可以用它来识别记录拉:

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"]); 
} 

这是一个简单的例子,你想使确定你有你的逻辑来拉DataTable或DataReader什么的。这个例子假设你有一个DataTable。有了阅读器,您需要在逻辑中添加阅读行。

你会最终调用这样的形象:

<img src="/imagehandler.ashx?ImageID=345" alt="" /> 

乔希

相关问题