C# 不使用asp.net repeater显示图像
我试图用转发器显示文件夹图像中的图片,但问题图片无法显示,我不知道为什么C# 不使用asp.net repeater显示图像,c#,html,asp.net,repeater,C#,Html,Asp.net,Repeater,我试图用转发器显示文件夹图像中的图片,但问题图片无法显示,我不知道为什么 '/> 您错过了回发属性。请使用下面的代码 protected void Page_Load(object sender, EventArgs e) { if(!IsPostBack) { int id = Convert.ToInt32(Request.QueryString["id"]);
'/>
您错过了回发属性。请使用下面的代码
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
int id = Convert.ToInt32(Request.QueryString["id"]);
var path = Server.MapPath("ProjectsImages/ ");
var images = Directory.GetFiles(path,id+"*");
ArrayList list = new ArrayList();
foreach (var img in images)
{
list.Add(img);
}
RepaterImages.DataSource = list;
RepaterImages.DataBind();
}
}
代码的问题是,您使用的是映像的物理路径。您必须提供到中继器的相对路径。按以下方式更改代码,我认为应该可以:
protected void Page_Load(object sender, EventArgs e)
{
try
{
int id = Convert.ToInt32(Request.QueryString["id"]);
string relativePath = "/ProjectsImages/";
var path = Server.MapPath(relativePath);
var images = Directory.GetFiles(path, id + "*").Select(x =>
{
var arrPath = x.Split('\\');
string imgName = arrPath[arrPath.Length - 1];
return relativePath + imgName;
});
RepaterImages.DataSource = images;
RepaterImages.DataBind();
}
catch (Exception ex)
{
throw ex;
}
}
我尝试了这个方法,但我认为这个问题来自路径,但我不确定以前的代码不是数据源使用的images属性而不是arrayList。立即更新代码检查请发布页面的呈现HTML。将
更改为
@VDWWD我从文件夹而不是数据库表中检索图像