Datalist绑定图片的问题,简单
从后台添加图片,添加了好几个,但是浏览时datalist控件只重复显示一个,很是郁闷,不知道问题出在哪里,帮帮忙啊,贴代码:
<asp:DataList ID="DataList1" runat="server" OnItemDataBound="DataList1_ItemDataBound" >
<ItemTemplate>
<table width="120" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="92" align="center">
<a href="product_view.aspx?productID=<%# DataBinder.Eval(Container.DataItem,"productID") %>">
<asp:Image ID="productImg" runat="server" Height="88px" Width="108px" ImageUrl='<%# DataBinder.Eval(Container.DataItem,"productSmallImg") %>' />
</a>
</td>
</tr>
<tr>
<td align="center" style="height: 18px"><%# DataBinder.Eval(Container.DataItem,"productName") %></td>
</tr>
</table>
</ItemTemplate>
</asp:DataList>
后台: private void BindProductMsg()
{
IProduct product = new Product();
DataList1.DataSource = product.GetProductAdminMsg();
DataList1.DataBind();
}
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
IProduct product = new Product();
OleDbDataReader dr = product.GetProductAdminMsg();
Image image = (Image)e.Item.FindControl("productImg");
if (dr.Read())
{
if (dr["productImg"].ToString() == "")
{
image.ImageUrl = @"~/image/upImage/Default.jpg";
}
else
{
image.ImageUrl = @"~/image/upImage/" + dr["productImg"];
}
}
}
类: public OleDbDataReader GetProductAdminMsg()
{
OleDbConnection conn = db.CreateConnection();
string sql = "select top 3 * from Product where productFlag=true";
OleDbCommand cmd = new OleDbCommand(sql,conn);
OleDbDataReader dr = null;
try
{
conn.Open();
dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (OleDbException ex)
{
throw new Exception(ex.Message, ex);
}
return dr;
}