如何通过C#从SQL获取图像?

时间:2014-02-06 12:31:46

标签: c# asp.net sql image

我有一个表格,里面有关于社会中每个人的信息。

在此表单中,有一个图像,必须从SQL Server生成。我不知道如何使用根据CODE显示图像的存储过程在图像控件中生成此图像Fromm sql到c#。我正在使用ASP(c#)

中的应用程序

这是我在sql中的程序:

create proc uploadImage 
@ppr int 
as

 if exists (select idimg from Images where idimg = ( select codeimg from Agent where PPR=@ppr))
 begin 
    select image from Images where idimg = ( select codeimg from Agent where PPR=@ppr) 
 end 

我已经有了我的代码,但还没有完成:

try
            {
                c.cmd = c.cn.CreateCommand();
                c.cmd.CommandText = "uploadImage";
                c.cmd.CommandType = CommandType.StoredProcedure;
                if (c.cn.State == ConnectionState.Closed)
                {
                    c.cn.Open();
                }
                c.cmd.Parameters.Add("@ppr", SqlDbType.Int);
                c.cmd.Parameters["@ppr"].Value = Session["Code"];
                SqlDataReader dr = c.cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    dr.Read();
                     **// here where i will treat my image ..i think**   
                }
                dr.Close();
            }

1 个答案:

答案 0 :(得分:2)

我认为他的正确方法是:

  1. 创建读取图像数据的存储过程
  2. 创建c#类HttpHandler,调用db存储并写入响应的二进制内容(具有正确的内容类型)(dotnet framework“view”sqlserver image columns as byte [])
  3. 加入你形成一个类型为image的组件,其中包含httrpndler作为url,其参数指定要读取的数据