(急!中午前弄好啊 不然吃不下饭)repeater读取数据库图片
数据库的一个字段 productUrl 保存的是产品图片的路径 例如 Image/29-11-08_1058.jpg
然后读取 需要相对路径 所以前面要加个 ~/ 例如 ~/Image/29-11-08_1058.jpg 这样就算正确显示了
部分代码:
//上传图片
string filename = Path.GetFileName(FileUpload1.PostedFile.FileName); //获取文件名
string extName = Path.GetExtension(filename); //获取扩展名
string NewPath_name = "Image/" + filename;
FileUpload1.PostedFile.SaveAs(HttpContext.Current.Request.MapPath("~/").ToString() + NewPath_name);
----------------------------------------------------------------------------------------------------------------
接下来用repeater 和sqldatesource 配合
部分代码如下:
<asp:Repeater ID="Repeater2" runat="server" DataSourceID="SqlDataSource2">
<ItemTemplate>
<asp:Image ID="Image1" runat="server" ImageUrl='<%# Eval("productUrl") %>'/>
<asp:Label ID="Label6" runat="server" Text='<%# Eval("productUrl").ToString().Replace("~/","") %>'></asp:Label>
</ItemTemplate>
</asp:Repeater>
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:GBKConnectionString %>"
SelectCommand="SELECT [productModel], [productUrl] FROM [Products]">
</asp:SqlDataSource>
----------------------------------------------------------------------------------------------------------------
Label6 是测试用的 显示正确 Image/29-11-08_1058.jpg 但是这样读不出来图片的啊 没有~/
我试过 ImageUrl='<%# Eval("productUrl").ToString().Replace("~/","") %>'/>
ImageUrl='~/'+'<%# Eval("productUrl") %>'/>
ImageUrl="~/"+'<%# Eval("productUrl") %>'/>
这样都不行啊 怎么办啊。 先谢谢跟帖的各位了啊
感谢csdn的各路英雄的 帮我解决了不少难题 本人属菜 来学习的