簡體   English   中英

如何動態顯示圖像 <li> 來自數據庫?

[英]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/jpegimage/png mime類型。

http://myServer/myApp/ImageHandler.aspx?id=32we3df9wekly2

參考:

  1. 數據庫與文件系統中的圖像
  2. 從vb.net中的sql數據庫顯示/檢索圖像

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM