0

我想将我的图像控件与 sql 数据库绑定。我正在将我的图像路径保存在 sql 数据库中,并且我正在从数据库中检索图像路径。当我通过断点检查时,它会向我显示图像的路径,但图像没有与它绑定这是我的代码

string imagepath = Server.MapPath("~/Pics/");
        string serverfilename = Path.GetFileName(AsyncFileUpload1.PostedFile.FileName);
        string fullpath = Path.Combine(imagepath, serverfilename);
        string path = "~\\Pics\\" + serverfilename;
        //string filename = System.IO.Path.GetFileName(AsyncFileUpload1.FileName);
        //string path = Server.MapPath("~/Pics/") + filename;

        AsyncFileUpload1.SaveAs(fullpath);
        //  FileUpload1.PostedFile.SaveAs(path);
        SqlCommand cmd = new SqlCommand("insert findfriend values('" + path + "','" + TextBox1.Text + "')", con);
        cmd.CommandType = CommandType.Text;
        cmd.ExecuteNonQuery();

        SqlCommand GetImage = new SqlCommand("select * from findfriend where name='" + TextBox1.Text + "'", con);
        GetImage.CommandType = CommandType.Text;
        SqlDataAdapter da = new SqlDataAdapter(GetImage);
        DataSet ds = new DataSet();
        da.Fill(ds);
        Image1.ImageUrl  = ds.Tables[0].Rows[0][1].ToString();

请告诉我哪里做错了

4

2 回答 2

0

我认为您忘记将图像添加到页面。

Page.Controls.Add(yourImage);

如果您有一个已经存在的图像,请检查该图像是否已上传并存在于目录中。

于 2013-07-11T12:31:07.103 回答
0

数据库通常以这种格式识别路径:

string path="Images/Yourfolder/imagename". 

保存到数据库时不要添加“~”。

前任:string path="~/Images/..."

只需尝试更改路径,同时将其保存在数据库中。

如果要保存的路径有“//”或反斜杠“\”,则它不会识别文件夹。只需保存并检查我上面提到的格式。

我刚刚使用下面的代码从文件上传控件中检索文件,然后将新路径存储在单独的字符串中并将其传递给数据库。

filepath = Server.MapPath("~/Images/Gallery/" + uploadedFile.FileName);
               uploadedFile.SaveAs(filepath);
               newpath = "/Images/Gallery/" + uploadedFile.FileName;
于 2013-07-11T12:55:25.787 回答