簡體   English   中英

將圖像存儲在數據庫中並在datagridview中檢索

[英]store image in database and retrieve in datagridview

我自己在.net中嘗試新事物。我想將圖像URL存儲在數據庫中並在gridview中動態地檢索它。我嘗試使用blob。但是我不想將圖像存儲在數據庫中,而僅將URL存儲在數據庫中。我發現我們可以在gridview中使用模板字段並以某種方式使用bind函數。我也可以將所有圖像存儲在項目文件夾中並從文件夾中檢索圖像。單擊按鈕我想在gridview中顯示圖像。但是我仍然無法繼續前進。這是我到目前為止的代碼。

<div>
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
            DataKeyNames="Model_Id" DataSourceID="SqlDataSource1">
            <Columns>
                <asp:BoundField DataField="Model_Id" HeaderText="Model_Id" 
                    InsertVisible="False" ReadOnly="True" SortExpression="Model_Id" />
                <asp:BoundField DataField="Model_Name" HeaderText="Model_Name" 
                    SortExpression="Model_Name" />
                <asp:BoundField DataField="Max_seats" HeaderText="Max_seats" 
                    SortExpression="Max_seats" />
                <asp:BoundField DataField="Image" HeaderText="Image" SortExpression="Image" />
            </Columns>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
            ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
            SelectCommand="SELECT * FROM [Model]"></asp:SqlDataSource>
    </div>

在您的GridView添加一個模板字段,即

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
            DataKeyNames="Model_Id" DataSourceID="SqlDataSource1">
    <Columns>
            <asp:TemplateField HeaderText="Photo">
                <ItemTemplate>
                    <img src='<%# Eval("Image") %>' />
                </ItemTemplate>
            </asp:TemplateField>  
            //other bound columns
   </Columns>            
</asp:GridView>

其中Image是表[Model]的列,其中包含Image URL。 如果未顯示圖片,請檢查相對網址結構,您可能需要像這樣對它進行前綴/調整:

/images/image1.jpg../images/image1.jpg /images/image1.jpg ../images/image1.jpg (取決於包含圖像的文件夾的相對位置)

它應該為您工作。

將圖像存儲在項目的解決方案資源管理器中的文件夾中,如果要保存到數據庫的鏈接,則將列的數據類型設置為varchar(MAX),然后將圖像的鏈接存儲到數據庫表中,如下所示。

1.如果您的文件夾名為Image,則將URL存儲為../Image/picture.jpg

2.轉到gridview的快速任務菜單,然后單擊“編輯”字段,然后從“可用字段”列表中選擇“ ImageField”,然后單擊“添加”,然后將圖像字段添加到“選定的字段”中

3.向上或向下移動“ SELECTED FIELDS”中的“ ImageField”以將其放置在其他列之間

4.單擊“ ImageField”,ImageField屬性將顯示在右側的“ GOTO DATA”中,並在“ DataImageUrlField”中選擇要從中檢索圖像的數據庫表列名稱。

沒錯,ImageField會自動為您的圖像生成HTML代碼以供顯示。

暫無
暫無

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

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