在ASP.NET中上传图片,我想做那种可以提前预览的,使用的是FileUpload服务器控件,在img控件(服务器或者html控件我都试过)我需要将桌面上的图片打开并且保存,因为打开文件获取的图片肯定是绝对路劲,使用绝对路径却显示不出图片。比如<img id='MyImg' alt='img' width='100px' height='100px' src='C:/Users/Administrator/Desktop/images/bg_menu.jpg'>,在这个路径中是完完全全存在这张图片的,可是显示不出来,在IE9、火狐、360都没办法,其他的没试过。。在线求解

解决方案 »

  1.   

    那就用相对路径啊。Servre.Mpath
      

  2.   

    我是这样做的,把文件上传到临时文件夹,进行预览
    如果保存则移动到正式文件夹,否则删除掉
    图片的管理全部在Uploads文件夹中
    CN/EN是中英文版本,如果你的项目没有语言的要求就忽略这个
    Banner/Product/. . ./这是不同类别
    Temporarys是临时文件夹夹我的程序操作思想先上传到临时文件夹,用户点击保存信息后就把数据更新到数据库,把临时文件夹中的
    文件移动到这些Banner/Product/. . ./中去怎么操作文件不用说了吧,就是File等类
      

  3.   

    .net不是用来给你显示用户端图片的。如果你想显示用户端图片,那还是在java上下点功夫吧,你要用.net来做预览,那就必须先上传到服务器。网页本身,是不可能,也不被允许,随意读取用户端本地信息的。何况是桌面,不然的话,B/S系统,将是最大的木马和后门了。
      

  4.   

     fname = FileUpload1.PostedFile.FileName;
                    int f = fname.LastIndexOf("\\") + 1;
                    filename = fname.Substring(f);
                    FileUpload1.PostedFile.SaveAs(Server.MapPath("UpLoad\\" + filename));
                    这个试试
      

  5.   


    path="UpLoad/a.jpg";
    Server.MapPath(path)