在gridview上显示图像

时间:2018-01-11 12:37:05

标签: c# asp.net image web-services gridview

我有2个网站,我正在尝试通过网络服务从数据库中检索gridview中的图像。我使用fileupload将图像放入我的数据库中的一个网站,并在另一个网站上检索。我的图像插入工作但我的图像没有出现在我检索到的gridview。我的代码出了什么问题?

这就是我将图像插入数据库的方式:

        protected void btn_submit_Click(object sender, EventArgs e)
    {
        string FeedbackDesc = tb_description.Text;
        int FeedbackRating = Rating1.CurrentRating;
        string Image = FileUpload1.FileName;
        string fileName = "";
        int EventID = int.Parse(lbl_eventid.Text);
        //int.Parse(lbl_eventid.Text);

        if (FileUpload1.HasFile)
        {
            fileName = Path.GetFileName(FileUpload1.PostedFile.FileName);
            FileUpload1.PostedFile.SaveAs(Server.MapPath("~/image/" + FileUpload1.FileName));

            DAL_Feedback feedback = new DAL_Feedback();
            int result = 0;
            result = feedback.Insert(FeedbackDesc, FeedbackRating, fileName, EventID);
        }
    }

这是我的检索码:

        public DataSet GetFeedback()
        {
        StringBuilder sql;
        SqlDataAdapter da;
        DataSet Feedback;
        SqlConnection conn = dbConn.GetConnection();
        Feedback = new DataSet();
        sql = new StringBuilder();
        sql.AppendLine("SELECT FeedbackID, FeedbackDesc, FeedbackRating, Image, EventID from Feedback");

        try
        {
            da = new SqlDataAdapter(sql.ToString(), conn);
            da.Fill(Feedback);
        }
        catch (Exception ex)
        {
            errMsg = ex.Message;
        }
        finally
        {
            conn.Close();
        }
        return Feedback;
    }
}

这是我的gridview:

         <asp:GridView ID="gvFeedback" runat="server" AutoGenerateColumns="False" CssClass="auto-style3" Height="358px" Width="1259px">
    <Columns>
        <asp:BoundField DataField="FeedbackID" HeaderText="Feedback ID" />
        <asp:BoundField DataField="FeedbackDesc" HeaderText="Description" />
        <asp:BoundField DataField="FeedbackRating" HeaderText="Rating" />
        <asp:BoundField DataField="EventID" HeaderText="Event ID" />
        <asp:ImageField DataImageUrlField="image" DataImageUrlFormatString="~/image/{0}" HeaderText="Image">
        </asp:ImageField>
    </Columns>
</asp:GridView>

2 个答案:

答案 0 :(得分:0)

是否发生错误?查看chrome中的开发人员工具。 使用错误消息,调试

会更有效

答案 1 :(得分:-1)

你有DataImageUrlFormatString="~/image/{0}"的地方 ~指的是当前域。您可能需要将~更改为第一个网站的域名