日期:2014-05-17  浏览次数:20445 次

显示多张图片问题
我将图片存储在数据库里面,然后显示出来,但每次只能显示一张图片,在asp中显示数据库的多张图片用循环,asp.net当中显示多张图片用循环不行,请问有什么方法或者什么控件可以显示多张图片的。
我显示一张图片的代码如下:
protected void Button2_Click(object sender, EventArgs e)
  {
  getimage(TextBox1.Text).Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
  }
  private System.Drawing.Image getimage(String id)
  {
  try
  {
  String sql = "select img from aspx where id="+id;
  SqlCommand comm = new SqlCommand(sql,conn);
  byte[] f = (byte[])comm.ExecuteScalar();
  System.IO.MemoryStream ms = new System.IO.MemoryStream(f);
  System.Drawing.Image image = System.Drawing.Image.FromStream(ms);
  return image;
  }
  catch (Exception ex)
  {
  Response.Write(ex.ToString());
  return null;
  }
  }
我之前想显示多张图片,把他改成
  protected void Button2_Click(object sender, EventArgs e)
  {
  int i;
  String sql = "select id from aspx";
  DataSet rs = new DataSet();
  SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
  adapter.Fill(rs);
  for (i = 1; i <= rs.Tables[0].Rows.Count; i++)
  {
  String i1 = Convert.ToString(i);
  getimage(i1).Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
  }
  }
但是他会显示错误,错误提示是:未将对象引用设置到对象的实例
所有想问下有什么方法可以显示多张图片,或者什么组件可以显示多张图片的,还有就是能给个实例下载或源代码比较好

------解决方案--------------------
asp.net ajax有个循环显示图片用的控件
------解决方案--------------------
String i1 = Convert.ToString(i); 
getimage(i1).Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg); 
确定你每次获得图片名称是否正确,特别是最后一个。
------解决方案--------------------
控件的话用datalist就可以
------解决方案--------------------
String sql = "select id from aspx"; 

改成

String sql = "select img from aspx";
------解决方案--------------------
DataList就可以吧...
------解决方案--------------------
路过学习下