ASP.NET WebApi 图片上传
以下是代码的实现过程:
Html页面表单布局:
1 <form id="UpPicture" enctype="multipart/form-data" action="服务器路径地址" method="post"> 2 <table> 3 <tr> 4 <td> 5 <input type="file" name="Picture"/> 6 </td> 7 </tr> 8 9 <tr> 10 <td>提交</td> 11 <td> 12 <input type="submit" value="提交" /></td> 13 </tr> 14 </table> 15 </form>
服务器端是实现:
1 /// <summary> 2 /// 图片上传方法,客户端通过表单的形式上传 3 /// </summary> 4 /// <returns></returns> 5 [HttpPost] 6 public PhotographUploadReturn PhotographUpload() 7 { 8 var msg = ""; 9 string _toServerPicturePath = "";//文件名 10 //接收表单传递过来的图片,需要限定上传的图片格式:".JPG", ".JPEG", ".GIF", ".PNG", ".BMP" 11 var file = HttpContext.Current.Request.Files["Picture"]; 12 13 //检查文件是否被预览选中,判断方式:通过判断文件名是否为空或者空字符串 14 if (!string.IsNullOrWhiteSpace(file.FileName)) 15 { 16 //限定上传图片的格式类型 17 string[] LimitPictureType = { ".JPG", ".JPEG", ".GIF", ".PNG", ".BMP" }; 18 //当图片上被选中时,拿到文件的扩展名 19 string currentPictureExtension = Path.GetExtension(file.FileName).ToUpper(); 20 //此处对图片上传的类型进行限定操作 21 if (LimitPictureType.Contains(currentPictureExtension)) 22 { 23 //此处标记图片上传至服务器的唯一新名称 24 string _newFileName = Guid.NewGuid().ToString(); 25 _toServerPicturePath = DateTime.Now.Year + "/" + DateTime.Now.Month + "/"; 26 string _dbPicturePath = "Certifications/" + _toServerPicturePath + _newFileName + currentPictureExtension; 27 _toServerPicturePath = AppDomain.CurrentDomain.BaseDirectory + "Certifications/" + _toServerPicturePath;//最终生成的文件名:+_newFileName +currentPictureExtension 28 29 //首先判断图片上传至服务的路径是否存在,不存在则创建并执行保存操作,存在则直接保存 30 if (Directory.Exists(_toServerPicturePath)) 31 { 32 //最终上传的文件路径全名 33 _toServerPicturePath = _toServerPicturePath + _newFileName + currentPictureExtension; 34 } 35 else 36 {//不存在此路径,则创建后执行保存操作 37 Directory.CreateDirectory(_toServerPicturePath); 38 _toServerPicturePath = _toServerPicturePath + _newFileName + currentPictureExtension; 39 } 40 //执行保存图片,并插入数据库操作 41 file.SaveAs(HttpContext.Current.Server.MapPath("~/" + _dbPicturePath)); 42 ////执行数据库相关操作,没有异常则代码继续执行,否则跳出 43 msg = "图片上传操作成功!"; 44 } 45 else 46 { 47 msg = "图片上传操作失败,请选择扩展名为:.JPG, .JPEG, .GIF, .PNG, .BMP 等类型图片。"; 48 } 49 } 50 else 51 { 52 msg = "图片上传操作失败,图片没有被选中!"; 53 } 54 55 return new PhotographUploadReturn { ImageName = _toServerPicturePath, Message = msg }; 56 }
转载于:https://www.cnblogs.com/tianyamoon/p/9378524.html
ASP.NET WebApi 图片上传相关推荐
- 用纯ASP代码实现图片上传并存入数据库中
用纯ASP代码实现图片上传并存入数据库中 热 ★ 用纯ASP代码实现图片上传并存入数据库中 用ASP编写网站应用程序时间长了,难免会遇到各式各样的问题,其中关于如何上传文件到服务器恐 ...
- C# ASP.NET MVC 图片上传的多种方式(存储至服务器文件夹,阿里云oss)
图片上传时我们进场用到的一个功能今天将他整理了一下写了个demo希望对大家有用 该demo分为如下 1.上传至至服务器文件夹 2.上传至阿里云oss 3.百度webupload上传图片 效果图如下: ...
- ASP.Net MVC3 图片上传详解(form.js,bootstrap)
图片上传的插件很多,但很多时候还是不能切合我们的需求,我这里给大家分享个我用一个form,file实现上传四张图片的小demo.完全是用jquery前后交互,没有用插件. 最终效果图如下: 玩过花田人 ...
- 使用asp.net将图片上传并存入SqlServer中,然后从SqlServer中读取并显示出来
一,上传并存入SqlServer 数据库结构 create table test { id identity(1,1), FImage image } 相关的存储 ...
- ASP.NET的图片上传和显示
上传 protected void btnUpload_Click(object sender, EventArgs e){if (!filUpload.HasFile) {Alert("没 ...
- asp 调用php上传图片,asp 版 本地图片上传问题!
真的很简单~ 就是两个 点点 的问题~:( 真当是 人不学不知义 啊~:) 为了让和我一样笨笨的人能节省些 宝贵的时间打麻将~:)我把 简单的代码贴出来~:) KE.show({ id : ...
- asp.net多图片上传案例_会计小明的故事-成本核算案例篇
因涉及成本核算案例篇,所需要的图表比较多,但是知乎不同于微信可以直接将文档图表复制过来,知乎专栏文章,所有图表必须先截图,然后以图片形式展示.但是成本核算案例图表实在是太多,一一截图,一则影响整体观感 ...
- android 调用asp.net webservice 图片上传到服务器
图片转换: package com.qsmart.audit.utility;import java.io.ByteArrayOutputStream; import java.io.File; im ...
- asp.net mvc 上传到服务器 图片不显示,ASP.NET MVC实现图片上传、图片预览显示
先看看效果(下面gif动画制作有点大,5.71MB): 题外话:上面选择图片来源于Insus.NET的新浪微博,言归正传,由于以前的asp.net mvc的练习文件上传文件,显示或是下载等博文,均是存 ...
- kindeditor扩展粘贴截图功能修改图片上传路径并通过webapi上传图片到图片服务器...
2019独角兽企业重金招聘Python工程师标准>>> kindeditor是一个非常好用的富文本编辑器,它的简单使用我就不再介绍了. 而kindeditor却对图片的处理不够理想. ...
最新文章
- 数控加工编程计算机的配置,计算机辅助数控加工编程.ppt
- java pdf打印_Java 打印PDF文档
- ADF BC:创建绑定到业务组件的UI表
- proteus仿真micropython_基于micropython的滑动平均滤波器
- html5游戏制作入门系列教程(三)
- 计算机图形学是指使用计算机通过,【填空题】计算机图形学是指使用计算机通过()在显示设备上构造出图形来。...
- fastText、TextCNN、TextRNN……这里有一套NLP文本分类深度学习方法库供你选择
- 大学生静态HTML鲜花网页设计作品 DIV布局网上鲜花介绍网页模板代码 DW花店网站制作成品 web网页制作与实现
- 一文让你详细了解CPU的内部架构和工作原理(好文)
- 佛罗里达大学计算机博士,2020年佛罗里达大学博士含金量
- 23MySQL 是怎么保证数据不丢的
- 【评测】SF9/SF21昆虫细胞培养基
- java实验2总结心得,java实验的心得体会
- Final Cut Pro 7非线性编辑高级教程
- nuget 的生成、发布、使用和更新
- [转帖]隔行扫描与逐行扫描视频有什么区别
- Linux使用rpm命令卸载软件
- ## 项目第十五天 ##
- Flannel网络原理(转载)
- 游戏网站怎样对接支付(知识介绍)
热门文章
- 利用ComplexHeatmap绘制热图(一)
- Java 日期格式工具类
- 反射在工厂模式中的使用
- Codeforces Round #483 (Div. 1) A. Finite or not?
- webpack使用七
- fastdfs5.10 centos6.9 安装配置
- jQuery.proxy用法
- 使用html和css的一些经验
- [ZT]javascript window resize 窗口改变事件
- freeldr 如何调用_BootMain的