Hi,
I used your code and its working fine. I just replaced the \\ with / in the path. Please also see the HTML. Hope this works for you. Take care
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="ErrorLabel1" runat="server"></asp:Label><br />
[Upload Images]<br />
<asp:FileUpload ID="FileUpload1" runat="server" /><br />
<asp:Button ID="BtnUpload" Text=" Upload Image " runat="server" OnClick="BtnUpload_Click" />
<br />
<br />
<asp:Repeater ID="RptImages" runat="server">
<HeaderTemplate>
<table width="100" align="center">
</HeaderTemplate>
<ItemTemplate>
<tr><td><asp:Image ID="Img" ImageUrl='<%# Eval("path") %>' runat="server" /></td></tr>
</ItemTemplate>
<AlternatingItemTemplate>
<tr><td><asp:Image ID="Img" ImageUrl='<%# Eval("path") %>' runat="server" /></td></tr>
</AlternatingItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</div>
</form>
</body>
</html>
// Code
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
BindRepeater();
}
}
protected void BtnUpload_Click(object sender, EventArgs e)
{
if (FileUpload1.PostedFile.FileName != "")
{
string StrFileName = FileUpload1.PostedFile.FileName;
string StrFileType = FileUpload1.PostedFile.ContentType;
string StrNow = Convert.ToString(DateTime.Now.Ticks);
string FullPath = "upload/images/" + StrNow + "_" + Path.GetFileName(StrFileName);
int fileSize = (int)Math.Round((double)FileUpload1.PostedFile.ContentLength / 1024, 0);
int maxSize = 1024;
if (fileSize > maxSize)
ErrorLabel1.Text = Convert.ToString(" <font color='Red' size='2'>Uploade faild, just 1mb big.</font>");
else
{
FileUpload1.PostedFile.SaveAs(Server.MapPath(FullPath));
SaveImagePathToXml(FullPath);
ErrorLabel1.Text = Convert.ToString(" <font color='Green' size='2'>Your images has been upload!</font>");
}
}
else
{
ErrorLabel1.Text = Convert.ToString(" <font color='Red' size='2'>Upploade faild, you have to have a images.</font>");
}
}
private void SaveImagePathToXml(string path)
{
string ImageFileName = "App_Data/Images.xml";
// Create xml file if not created.
if (!File.Exists(Server.MapPath(ImageFileName)))
{
FileStream Fs = new FileStream(Server.MapPath("App_Data/Images.xml"), FileMode.Create);
StreamWriter Sw = new StreamWriter(Fs);
Sw.Write("<data></data>");
Sw.Flush();
Sw.Dispose();
Fs.Dispose();
}
// write path to xml file.
XmlDocument Document = new XmlDocument();
Document.Load(Server.MapPath(ImageFileName));
XmlElement Xm = Document.CreateElement("image");
XmlAttribute Xa = Document.CreateAttribute("path");
Xa.Value = path;
Xm.Attributes.Append(Xa);
Document.ChildNodes[0].AppendChild(Xm);
Document.Save(Server.MapPath("App_Data/Images.xml"));
BindRepeater();
}
private void BindRepeater()
{
if (File.Exists(Server.MapPath("App_Data/Images.xml")))
{
DataSet Ds = new DataSet();
Ds.ReadXml(Server.MapPath("App_Data/Images.xml"));
RptImages.DataSource = Ds;
RptImages.DataBind();
}
}