我正在将图像绑定到数据列表。从数据库中获取图像名称并给出路径。
我的代码是:
<asp:DataList ID="dlImages" runat="server" RepeatColumns="4">
<ItemTemplate>
<asp:ImageButton ID="ImageButton1" Height="200px" Width="200px" ImageUrl='<%# Eval("PageName","D:\Sagar\Kinston\WebSite\ScreenMasterImages\{0}.jpg") %>' runat="server" />
</ItemTemplate>
</asp:DataList>
在 .cs 页面上:
ds = gc.GetDataToListBinder("select DISTINCT PageOrderID,PageName from ScreenMaster order by PageOrderID")
dlImages.DataSource = ds.Tables(0)
dlImages.DataBind()
我面临两个问题:
- 当 imagename 之间有空格时,它会在中间添加 %20 例如。如果 imagename 为“API Message”,则将其视为:“API%20Message”
我试过这个问题:
添加ImageUrl='<%#Server.HtmlDecode(Eval("PageName","D:\Sagar\Kinston\WebSite\ScreenMasterImages\{0}.jpg"))'
但我得到了错误:
XML literals and XML properties are not supported in embedded code within ASP.NET
- 如果没有空格 Eg.image name is "Charges" ,那么它也不会在 datalist 中显示。
当我运行项目并右键单击它并查看源代码时,它会向我显示正确的路径:
src="D:\Sagar\Kinston\WebSite\ScreenMasterImages\Charges.jpg"
但不显示图像。
请帮我处理上面的代码。
我在哪里犯了错误?
我还应该添加什么?