这是我自定义的一个ascx文件
<%@ Control Language="C#" ClassName="ShowImage" %>
<script runat="server">
private string _filePath;
public String FilePath
{
set
{
_filePath = value;
}
get
{
return _filePath;
}
}
void Page_Load()
{
string imageName = GetRandomImage();
Image1.ImageUrl = System.IO.Path.Combine(_filePath,imageName);
Label1.Text = imageName;
}
private string GetRandomImage()
{
string[] images = System.IO.Directory.GetFiles(_filePath, "*.jpg");
Random rn = new Random();
return System.IO.Path.GetFileName(images[rn.Next(images.Length)]);
}
</script>
<asp:Image runat="server" /><br />
<asp:Label runat="server" Text="Label"></asp:Label>
当给FilePath赋值的时候,赋一个物理路径,两者combine的结果却是D:/liu\\123.jpg
这是什么原因?怎么改进?
_imageFolderPath在哪儿?图片在保存时用物理路径,在网页上显示时用相对路径
第一次写的时候有错误,应该是给FilePath赋值