2011-03-15 69 views
0

图像控制似乎不加载图像?路径名称在数据库中设置为我桌面上的图片。问题从db路径名加载图像

OdbcCommand cmd = new OdbcCommand("SELECT User.FirstName, User.SecondName, User.Aboutme, User.DOB, Pictures.picturepath FROM User LEFT JOIN Pictures ON User.UserID = Pictures.UserID WHERE User.UserID=1", cn); 
OdbcDataReader reader = cmd.ExecuteReader(); 
while (reader.Read()) 
{ 
    Name.Text = String.Format("{0} {1}", reader.GetString(0), reader.GetString(1)); 
    Aboutme.Text = String.Format("{0}", reader.GetString(2)); 
    Age.Text = String.Format("{0}", reader.GetString(3)); 
    Image1.ImageUrl = String.Format("{0}", reader.GetString(4)); 
} 

我也试过@这让我看到了图像框,但随后消失?我已检查可见性设置为true。

Image1.ImageUrl = String.Format("@{0}", reader.GetString(4)); 

任何一个帮助?

<div class="image"> 
    <a href="#"></a> 
    <img style="border-width: 0px;" src="C:\Users\Public\Pictures\Sample%20Pictures" id="ctl00_ContentPlaceHolder1_Image1"> 
    &nbsp;</div> 

ASP

<div class="image"> 
    <a href="#"></a> 
    <asp:Image ID="Image1" runat="server" /> 
    &nbsp;</div> 
+1

reader.GetString(4)的原始值返回什么? – RQDQ 2011-03-15 20:09:32

+1

路径是服务器路径还是相对客户端可查看的路径?可能是因为它只需要映射到一个URL。 – David 2011-03-15 20:10:35

+0

客户端可查看 – 2011-03-15 20:11:56

回答

1

我会仔细检查的ImageUrl在例如设定为,事实上在桌面上的图片的完整路径。

您也可以在浏览器中检查生成的html,看看生成了什么,确认没有额外的转义字符......如果路径实际上仍然正确,请使用萤火虫或小提琴来查看是否有另一个原因图像没有被返回。

+0

ive输出原始html使用萤火虫仍然无法弄清楚什么是我做错了 – 2011-03-15 23:10:16

+0

发现问题MySQL没有处理空格 – 2011-03-15 23:27:46

1

似乎是它的一个mysql问题,它在相对路径中的空间中增加了%,使得它无用。