日期:2014-05-17  浏览次数:20454 次

.NET Image1.ImageUrl非根目录绝对路径绑定问题
网站发布在C盘,现有多个.NET中的Image控件,需要将E:\TEST\文件夹下的 1.jpg,2.jpg等图片循环赋给Image;涉及非根目录下文件的读取,想了些方法,仍未实现,求救!!!在线等待……
备注: E:\TEST文件夹已共享,设置为网络Everyone可访问读取,据说得用相对路径。代码如下:
 string strFilePath = "E:\\test\\111.jpg";
  Image1.ImageUrl = "~" + urlconvertor(strFilePath);

  //本地路径转换成URL相对路径
  private string urlconvertor(string imagesurl1)
  {
  string tmpRootDir = Server.MapPath(System.Web.HttpContext.Current.Request.ApplicationPath.ToString());//获取程序根目录
  string imagesurl2 = imagesurl1.Replace(tmpRootDir, ""); //转换成相对路径
  imagesurl2 = imagesurl2.Replace(@"\", @"/");
  //imagesurl2 = imagesurl2.Replace(@"Aspx_Uc/", @"");
  return imagesurl2;
  }


------解决方案--------------------
图片存在目录下面是可以通过路径去访问显示的,如果不是放在目录下面就需要通过操作流来显示。
------解决方案--------------------
建立虚拟目录之后
Image1.ImageUrl = "/" + "虚拟目录名称" + "/xx.jpg"就可以了显示了