从数据库中获取图片并将其绑定到 ListView
Fetch picture from database and bind it to ListView
对于这个问题我很抱歉,因为我认为它可能真的很基础,但我似乎遇到了很多麻烦。
我想做的是获取我保存在数据库中的图片并将其绑定到我拥有的 ListView。
在数据库中我没有图片本身,我有图片的名称,所以我想尝试使用它的 PathWay 来获取它。
我正在使用 ASP.NET Web 表单网站
这是 ListView,因此您可以更好地理解我的意思
<asp:ListView runat="server" ID="lvBrands" OnItemDataBound="lvBrands_ItemDataBound">
<LayoutTemplate>
<ul class="grid portfolio isotope no-transition portfolio-hex portfolio-shadows row demo-3 os-animation" data-os-animation="fadeInUp">
<li runat="server" id="itemPlaceholder"></li>
</ul>
</LayoutTemplate>
<ItemTemplate>
<li class="portfolio-item col-md-3 col-sm-3 style fashion grid cs-style-3">
<figure class="portfolio-figure">
<img src="images/products/test.jpg" alt="work-01" />
<figcaption>
<h4 class="title purpleColored" color="#58387B"><%# Eval("name") %></h4>
<span><%# Eval("keyword") %></span> <a class="text-right" href="javascript:;"><i class="fa fa-angle-right"></i></a>
</figcaption>
</figure>
</li>
</ItemTemplate>
</asp:ListView>
而不是 <img src=... />
我想要附加图片路径,以便它可以显示适当品牌的适当图片。
Brands是我在sql中创建的table,Brands和Pictures基本上是一对多的关系(一个Brand可以有很多张图片)
到目前为止,在我搜索的内容中,我发现最好使用 OnItemDataBound
从数据库中获取图片,如有任何进一步的帮助,我们将不胜感激。
这是进一步帮助的 c# 代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class index : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
DisplayBrands();
}
}
protected void DisplayBrands()
{
using (Entities db = new Entities())
{
List<Brand> brand = db.Brands.ToList();
lvBrands.DataSource = brand.OrderByDescending(b => b.date_created);
lvBrands.DataBind();
}
}
}
我知道我应该指定函数 lvBrands_ItemDataBound,但老实说我不知道要添加什么。
任何帮助都会很棒,
谢谢!
<img src="images/products/test.jpg" alt="work-01" />
把上面改成下面这样
<img src='<%# @"images/products/" + Eval("Image_name") %>' alt="work-01" />
"Image_name"应该是列的名字,你存放图片的名字。
对于这个问题我很抱歉,因为我认为它可能真的很基础,但我似乎遇到了很多麻烦。
我想做的是获取我保存在数据库中的图片并将其绑定到我拥有的 ListView。
在数据库中我没有图片本身,我有图片的名称,所以我想尝试使用它的 PathWay 来获取它。
我正在使用 ASP.NET Web 表单网站 这是 ListView,因此您可以更好地理解我的意思
<asp:ListView runat="server" ID="lvBrands" OnItemDataBound="lvBrands_ItemDataBound">
<LayoutTemplate>
<ul class="grid portfolio isotope no-transition portfolio-hex portfolio-shadows row demo-3 os-animation" data-os-animation="fadeInUp">
<li runat="server" id="itemPlaceholder"></li>
</ul>
</LayoutTemplate>
<ItemTemplate>
<li class="portfolio-item col-md-3 col-sm-3 style fashion grid cs-style-3">
<figure class="portfolio-figure">
<img src="images/products/test.jpg" alt="work-01" />
<figcaption>
<h4 class="title purpleColored" color="#58387B"><%# Eval("name") %></h4>
<span><%# Eval("keyword") %></span> <a class="text-right" href="javascript:;"><i class="fa fa-angle-right"></i></a>
</figcaption>
</figure>
</li>
</ItemTemplate>
</asp:ListView>
而不是 <img src=... />
我想要附加图片路径,以便它可以显示适当品牌的适当图片。
Brands是我在sql中创建的table,Brands和Pictures基本上是一对多的关系(一个Brand可以有很多张图片)
到目前为止,在我搜索的内容中,我发现最好使用 OnItemDataBound
从数据库中获取图片,如有任何进一步的帮助,我们将不胜感激。
这是进一步帮助的 c# 代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class index : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
DisplayBrands();
}
}
protected void DisplayBrands()
{
using (Entities db = new Entities())
{
List<Brand> brand = db.Brands.ToList();
lvBrands.DataSource = brand.OrderByDescending(b => b.date_created);
lvBrands.DataBind();
}
}
}
我知道我应该指定函数 lvBrands_ItemDataBound,但老实说我不知道要添加什么。
任何帮助都会很棒, 谢谢!
<img src="images/products/test.jpg" alt="work-01" />
把上面改成下面这样
<img src='<%# @"images/products/" + Eval("Image_name") %>' alt="work-01" />
"Image_name"应该是列的名字,你存放图片的名字。