当我使用照片没有任何文件夹,<asp:Image ID="Image1" ImageUrl='<%# Eval("PresidentPhotoPath") %>' runat="server" />
时,它可以正常工作。
然而,当我使用图像文件夹下的照片时,图片不显示,我只得到一个空白屏幕。这是我正在使用的代码:
<div class="wrapper">
<asp:Repeater runat="server" ID="Repeater1">
<ItemTemplate>
<asp:Image ID="Image1"
ImageUrl='"/Images" + <%# Eval("PresidentPhotoPath") %>'
runat="server" />
</ItemTemplate>
</asp:Repeater>
</div>
答案 0 :(得分:1)
我建议使用代码隐藏方法为你构建字符串,如下所示:
protected string BuildPath(string photoPath)
{
return "Images/ + photoPath;
}
注意:考虑将这个命名比
BuildPath
更有用,因为这是非常通用的,只是选择了这个名称,因为没有更好的想法立即浮现在脑海中。
现在在你的标记中你可以调用方法,如下所示:
ImageUrl='<%# BuildPath(Eval("PresidentPhotoPath")) %>'
我推荐这种方法的原因如下:
Eval()
值的方法调用答案 1 :(得分:1)
将asp:Image转换为以下代码:
<asp:Image ID="Image1"
ImageUrl='<%# string.Format("~/Images/{0}", Eval("PresidentPhotoPath")) %>'
runat="server" />