【问题标题】:Display image from database asp.net vb从数据库 asp.net vb 显示图像
【发布时间】:2017-08-03 14:45:13
【问题描述】:

我有数据库

 Id     int
 img    varbinary(MAX) --> image
 descr  nvarchar(50)

现在我想显示图像和描述。我使用以下代码

<div>
    <asp:GridView 
        ID="GridView1" 
        runat="server" 
        AutoGenerateColumns="False"
        DataKeyNames="Id" 
        DataSourceID="SqlDataSourceH"
        CssClass="myGridView"
        RowStyle-CssClass="rows"
        ShowHeader="false">

        <Columns>
             <asp:ImageField
                DataImageUrlField = "Id" 
                DataImageUrlFormatString = "Hardware.aspx?Id={0}"
                ControlStyle-Width = "100" 
                ControlStyle-Height = "100"></asp:ImageField>
            <asp:BoundField DataField="descr"></asp:BoundField>
        </Columns>
    </asp:GridView>

    <asp:SqlDataSource 
        runat="server" 
        ID="SqlDataSourceH" 
        ConnectionString='<%$ ConnectionStrings:ConnectionString %>' 
        SelectCommand="SELECT [Id], [img], [descr] FROM [Hardware]">
    </asp:SqlDataSource>
</div>

但图片不显示

我应该怎么做才能显示图片?

【问题讨论】:

  • 响应Hardware.aspx?Id={0}的调用的代码是什么?

标签: sql asp.net database vb.net web-applications


【解决方案1】:

检查/Images/theimage.jpg是否真的存在然后你需要进入数据库并将完整路径放在列img中。

此外,如果它位于文件夹 /Images/ 中,那么您需要“../Images/theimage.jpg”才能返回根文件夹。检查 url 的值,将其复制到剪贴板并转储到地址栏中,看看它是否出现,所以http://localhost/(dump url 这里)如果它没有出现,那么你需要检查路径并更新 url 值在数据库中。

【讨论】:

  • 我认为文件路径不会有任何好处,因为它存储为 varbinary 并使用处理程序加载图像。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-27
相关资源
最近更新 更多