ASP.NET—上传图片

上传图片的逻辑:

在静态页面写好上传传送的是文件流,不是文件名

(enctype="multipart/form-data":如果要上传文件必须加上该属性,指定相应的编码。只有这样用户选择的文件数据(文件流)才会放在请求报文中,发送给服务器。表单中的其它表单元素(文本框等),也会发送到服务端,但是格式也变了,但是在服务端还是按照以前的方式进行接收)

<form method="post" action="ProcessFileUp.ashx" enctype="multipart/form-data">

       
    </form>

在ashx页面接收从静态页面传过来的文件流,判断是否是正常格式的图片(先获取文件名.后缀名,根据后缀名判断)

为了防止上传的图片同名,采用存放在不同文件夹(年/月/日多重文件夹),在存的时候要判断是否存在这个文件夹,存在就不创建,不存在就创建

图片名是:路径+ GUID+后缀名(这加起来就是图片的路径)

保存图片到指定路径

返回给静态页面图片的地址,显示出来

 

 

 注:GUID是一个通过特定算法产生的二进制长度为128位的数字标识符,用于指示产品的唯一性。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。

发布了108 篇原创文章 · 获赞 13 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/lclcsdnblink/article/details/103567224