[英]how to dynamically display image in <li> coming from database?
如何動態顯示來自數據庫的圖像? 我將在列表中使用圖像
<ul>
<li>
<asp:Image id="image1" runat="server" ImageUrl=""/>
</li>
</ul>
我在后面的代碼上使用C#。 我已經創建了一種顯示圖像的方法,但是我不知道如何在列表中和圖像控件中使用我的方法。 我是否需要使用中繼器來實現此目的? 我要發生的事情是重復列出與數據庫中的圖像數量一樣多的列表。
Repeater
絕對是您最好的解決方案。 設置方法如下:
<asp:Repeater runat="server" ID="Repeater">
<HeaderTemplate>
<ul>
</HeaderTemplate>
<ItemTemplate>
<li>
<asp:Image id="image1" runat="server"
ImageUrl='<%# DataBinder.Eval(Container.DataItem, "Image") %>' />
<li>
</ItemTemplate>
<FooterTemplate>
</ul>
</FooterTemplate>
</asp:Repeater>
然后,您所需要做的就是分配數據源,然后轉發器將處理其余的數據:
DataTable databaseResults = GetYourImages();
Repeater.DataSource = databaseResults;
Repeater.DataBind();
是的,您應該使用中繼器。
但是,您不會使用您的方法在轉發器內部顯示圖像。 相反,您應該提供圖像的URL。 瀏覽器將首先下載您的HTML,然后從中提取所有圖像URL,然后將使用它們的URL逐一下載每個圖像。
因此,您必須創建另一個頁面(稱為GetImage.aspx),該頁面將返回圖像並將URL放入該頁面的<li>標記中。
您需要構建一個圖像處理程序。 例如,編寫一個ASPX頁面,該頁面獲取圖像ID,並返回帶有二進制數據的image/jpeg
或image/png
mime類型。
http://myServer/myApp/ImageHandler.aspx?id=32we3df9wekly2
參考:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.