在asp.net2005开发中,判定文件是否存在以及拷贝文件的时候(或者可以干脆扩展到所有的文件操作中,不过这个范围就没有验证过了),如果使用相对路径,或者使用~/path/paht这种格式,似乎判断的结果跟实际情况不太相符。不知道是不是自身代码的问题。后来把路径mappath 了一下,这才得到了正确的结果。真是怪哉!
贴出当时出现反常现象的代码,供日后察看:
if (!System.IO.File.Exists(Server.MapPath("~//images//") + s_name + "." + sb.ToString()))
{
if (System.IO.File.Exists(picPath))
{
System.IO.File.Copy(picPath,Server.MapPath( ".//images//") + s_name + "." + sb.ToString());
}
}
if (System.IO.File.Exists(Server.MapPath("~//images//") + s_name + "." + sb.ToString()))
Image1.ImageUrl = "~//images//" + s_name + "." + sb.ToString();
else
Image1.ImageUrl = "~//images//default.jpg";
怎么以前做过很多次的文件操作都没有发现会有这种问题呢?