Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.NET-Gridview不显示图像_C#_Asp.net_Sql Server_Gridview - Fatal编程技术网

C# ASP.NET-Gridview不显示图像

C# ASP.NET-Gridview不显示图像,c#,asp.net,sql-server,gridview,C#,Asp.net,Sql Server,Gridview,“我的图像”字段保存在(SQL server 2005)…中,图像通过“文件上载”按钮插入数据库中。。。 现在我想在gridview中显示数据,但不想在gridview中显示图像字段和其他字段,因为其他字段都是文本格式 <form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"

“我的图像”字段保存在(SQL server 2005)…中,图像通过“文件上载”按钮插入数据库中。。。
现在我想在gridview中显示数据,但不想在gridview中显示图像字段和其他字段,因为其他字段都是文本格式

<form id="form1" runat="server">
<div>

    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
        DataKeyNames="bookname"  Height="504px" 
        Width="289px">
        <Columns>
            <asp:TemplateField HeaderText="image">
                <ItemTemplate>
                    <asp:Image ID="Image1" runat="server" 
                        ImageUrl='<%# String.Format("~/path/to/image/" + Eval("image")) %>' />
                </ItemTemplate>
                <EditItemTemplate>
                    <asp:TextBox ID="TextBox1" runat="server" Text='<%# Eval("image") %>'></asp:TextBox>
                </EditItemTemplate>
            </asp:TemplateField>
            <asp:BoundField DataField="bookname" HeaderText="bookname" ReadOnly="True" 
                SortExpression="bookname" />
            <asp:BoundField DataField="price" HeaderText="price" SortExpression="price" />
        </Columns>
    </asp:GridView>
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
        SelectCommand="SELECT [image], [bookname], [price] FROM [books]">
    </asp:SqlDataSource>
ImageUrl=''/>

当图像存储到数据库中时,您需要使用处理程序来检索图像,而不是
string.Format

。您可以在此处获得参考

我认为问题在于ImageUrl=''…但我无法解决该问题…请帮助我加载此受代码保护的无效页面(对象发送方,事件参数e){string qry;string connection=@“数据源=。\SQLEXPRESS;AttachDbFilename=D:\WebSite1\App\u Data\Database.mdf;集成安全性=True;用户实例=True”SqlConnection con;SqlCommand cmd;SqlDataSource sds=new SqlDataSource();qry=“select*from books”;sds=new SqlDataSource(connection,qry);GridView1.DataSource=sds;GridView1.DataBind();}是否将图像路径保存到数据库中?使用http调试器(Fiddler)查看实际的请求uri。是否有其他选项…您可以告诉我在gridview中显示图像的方法…如何操作..例如为图像字段添加列,以及我在某处读到的~/images/{0}??对于imageurlform…这是什么?我看不出您的方法有任何缺陷。您只需调试请求并查看服务器响应的状态。在Fiddler中,您将看到所有内容:请求是否已发送(或未发送),服务器是否对其进行处理,以及向客户端发送的确切响应。很可能由于uri键入错误而找不到404
ImageUrl='<%# this.ResolveUrl("~/path/to/image/" + Eval("image")) %>' />
<asp:Image ID="Image1" runat="server" ImageUrl='<%# String.Format("~/path/to/image/{0}" , Eval("image")) %>' />   
<form id="form1" runat="server">
    <div>
       <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
            DataKeyNames="bookname"  Height="504px" 
            Width="289px">
            <Columns>
                <asp:TemplateField HeaderText="image">
                    <ItemTemplate>
                        <asp:Image ID="Image1" runat="server" 
                            ImageUrl='<%# String.Format("~/path/to/image/{0}" , Eval("image")) %>' />
                    </ItemTemplate>
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Eval("image") %>'></asp:TextBox>
                    </EditItemTemplate>
                </asp:TemplateField>
                <asp:BoundField DataField="bookname" HeaderText="bookname" ReadOnly="True" 
                    SortExpression="bookname" />
                <asp:BoundField DataField="price" HeaderText="price" SortExpression="price" />
            </Columns>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
            ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
            SelectCommand="SELECT [image], [bookname], [price] FROM [books]">
        </asp:SqlDataSource>